- The effectiveness of C++14 - 5 Updates
- Onwards and upwards - 4 Updates
- The effectiveness of C++14 - 1 Update
Bo Persson <bop@gmb.dk>: Jan 08 05:36PM +0100 On 2015-01-08 02:44, Stefan Ram wrote: > features«. I am sure that friends of gcc might dispute whether > Clang has better support for modern C++, but this shows that > Google cares to use modern C++. One major difference is that Clang 3.5 is released, while gcc 5.0 is not. Bo Persson |
woodbrian77@gmail.com: Jan 08 09:33AM -0800 On Thursday, January 8, 2015 at 10:36:58 AM UTC-6, Bo Persson wrote: > > Clang has better support for modern C++, but this shows that > > Google cares to use modern C++. > One major difference is that Clang 3.5 is released, while gcc 5.0 is not. I think it would be interesting to know if the idea for the switch was from people working on Chrome or Clang. It may have just been a nuisance the Chrome people couldn't fend off. Brian Ebenezer Enterprises - In G-d we trust. http://webEbenezer.net |
Melzzzzz <mel@zzzzz.com>: Jan 08 07:46PM +0100 On Thu, 08 Jan 2015 17:36:37 +0100 > > Google cares to use modern C++. > One major difference is that Clang 3.5 is released, while gcc 5.0 is > not. clang develops pretty fast, it is big competition to gcc, but gcc has better optimizer last time I checked. [bmaxa@maxa-pc sci]$ g++-trunk -Wall -Ofast -march=native *.c -o scimath2gcc -lm [bmaxa@maxa-pc sci]$ ./scimath2gcc ** ** ** SciMark2 Numeric Benchmark, see http://math.nist.gov/scimark ** ** for details. (Results can be submitted to pozo@nist.gov) ** ** ** Using 2.00 seconds min time per kenel. Composite Score: 2290.40 FFT Mflops: 2139.58 (N=1024) SOR Mflops: 2442.17 (100 x 100) MonteCarlo: Mflops: 672.62 Sparse matmult Mflops: 2175.19 (N=1000, nz=5000) LU Mflops: 4022.46 (M=100, N=100) [bmaxa@maxa-pc sci]$ clang -Wall -Ofast -march=native *.c -o scimath2clang -lm [bmaxa@maxa-pc sci]$ ./scimath2clang ** ** ** SciMark2 Numeric Benchmark, see http://math.nist.gov/scimark ** ** for details. (Results can be submitted to pozo@nist.gov) ** ** ** Using 2.00 seconds min time per kenel. Composite Score: 2679.03 FFT Mflops: 1811.36 (N=1024) SOR Mflops: 2425.46 (100 x 100) MonteCarlo: Mflops: 649.38 Sparse matmult Mflops: 1624.94 (N=1000, nz=5000) LU Mflops: 6884.02 (M=100, N=100) g++ 5.0 has regression in comparison to 4.9... |
Chris Vine <chris@cvine--nospam--.freeserve.co.uk>: Jan 08 09:17PM On 8 Jan 2015 01:44:09 GMT > features«. I am sure that friends of gcc might dispute whether > Clang has better support for modern C++, but this shows that > Google cares to use modern C++. Big deal. Google are significantly involved in (that is, employ some of the developers of) llvm and clang. Presumably they have some commercial interest in getting a greater stake in one particular compiler chain. That may, or may not, be connected with the fact that gcc is GPL (with exception for compiled code) whereas llvm is not. gcc and clang are more or less equivalent in C++11/14 support. Google's code doesn't even use exceptions let alone "modern C++". Chris |
Bo Persson <bop@gmb.dk>: Jan 09 12:03AM +0100 On 2015-01-08 19:46, Melzzzzz wrote: >> not. > clang develops pretty fast, it is big competition to gcc, but gcc > has better optimizer last time I checked. The thing here was that both of them claim to support the full C++14 language. One already being released, and the other one available "real soon now". Bo Persson |
woodbrian77@gmail.com: Jan 08 10:05AM -0800 Below I've posted my front tier. It's only sixty some lines long. It generates a request and uses UDP to send the request to the middle tier. Then it waits for a reply. If it doesn't get a reply, it generates another request and waits again. One thing I've been thinking about is this line: SendBuffer sendbuf(udp_packet_max); That does a heap allocation of udp_packet_max bytes. For the receive buffer I use the stack. I've thought about changing the line above to be something like this: ::std::array<char, udp_packet_max> ar; SendBufferStack(ar); I've coded that, but haven't tested to see what the performance is like. Anyway, I have some time to work on these things and would like to get ideas on how to improve this program or the rest of the code and documentation on my site. #include <platforms.hh> #include <ErrorWords.hh> #include <getaddrinfo_wrapper.hh> #include <poll_wrapper.hh> #include <ReceiveBufferUDP.hh> #include <SendBuffer.hh> #include <stdio.h> #include <stdlib.h> // exit strtol #include <syslog_wrapper.hh> #include <udp_stuff.hh> #include <zz.front_messages_middle.hh> using namespace ::cmw; int main (int argc,char** argv) { try{ if(argc<3 || argc>5){ printf("Usage: %s account-number config-file-path [node] [port]\n" ,argv[0]); return EXIT_FAILURE; } #ifndef CMW_WINDOWS ::openlog(argv[0],LOG_NDELAY,LOG_USER);
Subscribe to:
Post Comments (Atom)
|
No comments:
Post a Comment