April 22, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter | "Walter" <newshound@digitalmars.com> wrote in message news:d49pck$1c5d$1@digitaldaemon.com... ...... >> So I presumed that a genuine D enthusiast >> was not only completing the programs, he >> was also 'polishing' the D code. > > There's nothing dirty going on ....... > ...... reflects the enthusiasm of Dave and our interest in > making D perform well. There was no intention at all to smell dirty tricks. It just seemed impossible to me at this stage that D is beating Intel C that easily if Intel wasn't penalized for missing benchmark programs. I am equally interested to see D getting a boost, because I am absolutely convinced that D is the answer to most prayers of tortured programmers everywhere. > ....... It'll perform about exactly like compiled > C would, especially since DMD and DMC share the > optimizer and code generator. That is where I am expecting Intel to recognize the new realities and contribute generously to the D development. We all would throw away our AMD cpu's to show our gratitude to Chipzilla, wouldn't we? ; ) >> Furthermore I have not found any apps >> yet where D 0.121 could beat gcc 3.43 on >> a Windows system in terms of execution >> speed (compile time is a different story). > > Here's one: www.digitalmars.com/d/cppstrings.html Yeah, right. But even Pascal could beat C on this one in the good ol' days. It probably would have been better for me to write "any of my apps" instead of "any apps". Take this as a correction to my previous post. > ........ opportunities possible in D that are not explored. > To do so well compared to compilers that have been aggressively > developed as optimizing compilers by engineers thoroughly familiar > with the target CPU chips, is doing rather well. I started to get impressed already some time ago when I have recognized that D can take on its parent (dmc) and is aparently lacking 'alpha stage performance deficiencies'. Good job (once again)! |
April 22, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Anders F Björklund | "Anders F Björklund" <afb@algonet.se> wrote in message news:d4abp4$2071$1@digitaldaemon.com... > Bob W wrote: > > This is confused. While DMD 0.121 is fast, > you can get D for GCC 3.4.3 if you like that > back-end better ? I don't, unless I need it in terms of code generation, compatibility or GNU C extensions, C99, etc., because gcc compiler (-O3) and linker are dreadfully slow. That might have changed with gcc 4.0 just a little bit, but I have not tried the 4.0, since it was released only 2 days ago. So one slow compiler/linker system on my computer is enough. No GDC, sorry. > It would be more "fair" to > compare DMC with GCC (C), and DMD with GDC (D) ? > (to compare the output of the actual compilers) It would, but I will always use and compare to whatever suits me best. Comparison will not be scientific in nature (neither are the benchmarks we're talking about). Running DMC on my machine is no option for various reasons, and GDC is no option because I strongly suspect that compile/link times will be as frustratingly slow as these of my gcc. So my comparison is between the best C compiler for me (gcc) and the best language/compiler/linker combination I have found over the past years (DMD). > However, I think GCC loses out to both the Intel > compiler for X86, and the IBM compiler for PPC ? > When it comes to speed, that is. I think the price > for GCC is right :-), and is definitely more open. I agree. Furthermore gcc caught me a couple of years ago with their features, so any other C compiler won't do my programs any good. Should I ever wish to rewrite them, I might opt to port them to D. |
April 22, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bob W | Bob W wrote: > I don't, unless I need it in terms of code generation, > compatibility or GNU C extensions, C99, etc., > because gcc compiler (-O3) and linker are dreadfully > slow. That might have changed with gcc 4.0 just a > little bit, but I have not tried the 4.0, since it was > released only 2 days ago. So one slow compiler/linker > system on my computer is enough. No GDC, sorry. GCC 3 is a lot slower than GCC 2 was (better too, but) I've heard GCC 4 sets it straight again, and then some. I'm using ccache, which I've found to be a great help. (and of course, it doesn't help much the first time) > I agree. Furthermore gcc caught me a couple of > years ago with their features, so any other C compiler > won't do my programs any good. Should I ever > wish to rewrite them, I might opt to port them to D. I normally write portable programs... And mostly for legacy. So I haven't been using any GCC-only features (just stuff like inline, that are optional) Some Mac-only stuff, though. Then again, I'm not using C++ very much. Just plain old C. --andersr |
April 22, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Georg Wrede | Georg Wrede schrieb:
> Actually, the fact that D has got them all, and C++ (etc) haven't, _could_ be construed as telling something about the language itself!
>
> Think about it. The number of C++ users is multiple to those using D. And the number of 5+ years' veteran Gurus outnumbers what D has with a margin I can't even imagine. (Do you know any D gurus with 5+ years?)
>
> So, what is left, is that D makes it (presumably a lot) easier to write some of the more unusual benchmarks. Right?
Don't forget: there may be relatively few D users, but many of them *want* to prove that D is better. C++ users don't have any incentive to prove anything. Very few of the gurus even believe that their language is superior. They simply stick with what has proven to be good enough for them.
The best way to test D's superiority would therefore be, if experienced D programmers try write high quality code in C++, putting in the same effort as in the D code. Only if this is done honestly, the outcome of the shootout has some real meaning.
(Comparing with other languages than C++ probably has little meaning, since they either are too different or (like C) too similar to a subset to D.)
|
April 22, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Anders F Björklund | "Anders F Björklund" <afb@algonet.se> wrote in message news:d4ard8$2cl8$1@digitaldaemon.com... > Bob W wrote: > >> I don't, unless I need it in terms of code generation, >> compatibility or GNU C extensions, C99, etc., >> because gcc compiler (-O3) and linker are dreadfully >> slow. That might have changed with gcc 4.0 just a >> little bit, but I have not tried the 4.0, since it was >> released only 2 days ago. So one slow compiler/linker >> system on my computer is enough. No GDC, sorry. > > GCC 3 is a lot slower than GCC 2 was (better too, but) > I've heard GCC 4 sets it straight again, and then some. I hope you are right. I am still suspicious: a 20% compile speed increase won't help much, GCC needs at least several 100% in order to compete with the fast guys (dmc, lcc, VC). If it hadn't all the other advantages I would have probably dumped it a long time ago. > I'm using ccache, which I've found to be a great help. > (and of course, it doesn't help much the first time) Maybe I am wrong, but I guess ccache won't help me because of my programming style: Ever since I have stopped writing commercial programs I have also stopped using make, modules, unnecessary header files, etc. I'd rather #include my own library sources to new code instead of using precompiled libraries. Everytime I change my code or my compiler, my programs get a compulsary clean buid. That is why I like the compilers, CPUs and hard drives to be as fast as possible. I know it does not always work this way but I'd curse myself if I started to use conventional C programming techniques again for casual applications. > I normally write portable programs... And mostly for legacy. So I haven't been using any GCC-only features (just stuff like inline, that are optional) Some Mac-only stuff, though. Then again, I'm not using C++ very much. Just plain old C. In my case: (almost) never portable, never legacy. GCC gives me nested functions, so I gladly use them. Believe me, this feature helps if someone like me is stupid enough to pack up to several 100k of source code in one file. But if D succeeds we can anyway happily throw away all of our C sources - after having them ported to D of course. : ) |
April 22, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bob W | Bob W wrote: > Ever since I have stopped writing commercial programs > I have also stopped using make, modules, unnecessary > header files, etc. I'd rather #include my own library sources > to new code instead of using precompiled libraries. You write everything yourself ? No libraries ? Wow. Or "ouch"... I guess that build helpers or packagers are totally "out" then ? > Everytime I change my code or my compiler, my programs > get a compulsary clean buid. That is why I like the compilers, > CPUs and hard drives to be as fast as possible. I know it > does not always work this way but I'd curse myself if > I started to use conventional C programming techniques > again for casual applications. ccache is especially good for that "clean rebuild" scenario... The idea with ccache is that you only have to run the preprocessor on the code. If the hash result of that (and the compiler) hasn't changed, neither has the object code so it just hands you a copy from the cache. It's at http://ccache.samba.org/ Make is otherwise good at keeping track of what needs compiling ? > In my case: (almost) never portable, never legacy. GCC > gives me nested functions, so I gladly use them. Believe > me, this feature helps if someone like me is stupid enough > to pack up to several 100k of source code in one file. Pleasure to meet you sir, there's not too many Real Men left ? :-) Let's just say that our programming methodology varies. A lot... --anders |
April 22, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Anders F Björklund | "Anders F Björklund" <afb@algonet.se> wrote in message news:d4b54n$2lru$2@digitaldaemon.com... > You write everything yourself ? No libraries ? Wow. Or "ouch"... "Ouch" is correct. But as long as it is fun and nobody asks me whether I'll be able to meet the deadline, its ok. It is no challenge to use qsort() if it is not completely rewritten for inlining before it is used, don't you think so? And it would be just a touch too easy to use memcpy, my own version is faster. This might have saved me a couple of millisecs per week on average. > I guess that build helpers or packagers are totally "out" then ? How did you know this? You can add debuggers to the "out" group as well. I have used one a couple of years back though. Conclusions: What for? No fun! > ccache is especially good for that "clean rebuild" scenario... > > The idea with ccache is that you only have to run the preprocessor on the code. If the hash result of that (and the compiler) hasn't changed, neither has the object code so it just hands you a copy from the cache. It's at http://ccache.samba.org/ What copy? Under normal circumstances I'll get one big object file and this changes every time I recompile. While I can imagine that ccache is useful for the standard way of doing C, I am still doubting that it can do me any good if I insist of having one file for each of my projects. But I'll have a closer look sooner or later. Thanks for the hint anyway. > Make is otherwise good at keeping track of what needs compiling ? Same thing: one single source (with several source code includes) gets usually compiled. Therefore I stopped using 'make' some time ago, because it just doesn't make sense for my environment. >> In my case: (almost) never portable, never legacy. GCC gives me nested functions, so I gladly use them. Believe me, this feature helps if someone like me is stupid enough to pack up to several 100k of source code in one file. > > Pleasure to meet you sir, there's not too many Real Men left ? :-) It is actually getting better nowadays. I started (reluctantly) to add sufficient comments to my code. This keeps me from dumping my old programs and rewriting them for simplicity reasons, if I ever need to change them. |
April 23, 2005 [ot]D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bob W | The First OT: anybody ever wonder why my posts look decent in comparson with some others?
Two things:
1) I use a decent newsreader.
2) I care about how pople reading and responding to my post (and even more, people responding) would feel.
Bob W wrote:
> "Anders F Björklund" <afb@algonet.se> wrote in message news:d4b54n$2lru$2@digitaldaemon.com...
>
>> You write everything yourself ? No libraries ? Wow. Or "ouch"...
>
> "Ouch" is correct. But as long as it is fun and nobody asks me
> whether I'll be able to meet the deadline, its ok. It is no challenge
> to use qsort() if it is not completely rewritten for inlining before
> it is used, don't you think so? And it would be just a touch too easy
> to use memcpy, my own version is faster. This might have saved me a
> couple of millisecs per week on average.
>
>> I guess that build helpers or packagers are totally "out" then ?
>
> How did you know this? You can add debuggers to the "out" group as
> well. I have used one a couple of years back though. Conclusions:
> What for? No fun!
>
>> ccache is especially good for that "clean rebuild" scenario...
>>
>> The idea with ccache is that you only have to run the preprocessor
>> on the code. If the hash result of that (and the compiler) hasn't
>> changed, neither has the object code so it just hands you a copy
>> from the cache. It's at http://ccache.samba.org/
>
> What copy? Under normal circumstances I'll get one big object file
> and this changes every time I recompile. While I can imagine that
> ccache is useful for the standard way of doing C, I am still doubting
> that it can do me any good if I insist of having one file for each of
> my projects. But I'll have a closer look sooner or later. Thanks for
> the hint anyway.
>
>> Make is otherwise good at keeping track of what needs compiling ?
>
> Same thing: one single source (with several source code includes)
> gets usually compiled. Therefore I stopped using 'make' some time
> ago, because it just doesn't make sense for my environment.
>
>>> In my case: (almost) never portable, never legacy. GCC gives me
>>> nested functions, so I gladly use them. Believe me, this feature
>>> helps if someone like me is stupid enough to pack up to several
>>> 100k of source code in one file.
>>
>> Pleasure to meet you sir, there's not too many Real Men left ? :-)
>
> It is actually getting better nowadays. I started (reluctantly) to add sufficient comments to my code. This keeps me from dumping my old
> programs and rewriting them for simplicity reasons, if I ever need to
> change them.
Hmm, seems to me that some of the Religiously Touted Rights are actually worth something. For the rest, there just might be a few other Religious Rights there to catch.
(I remember the time when I had no respect for Dynamic Data Structures. And this lack of respect was only due to me not respecting the professor of that time.)
|
April 23, 2005 Re: D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bob W | On Fri, 22 Apr 2005 23:54:12 +0200, Bob W wrote: > "Anders F Björklund" <afb@algonet.se> wrote in message news:d4b54n$2lru$2@digitaldaemon.com... > >> You write everything yourself ? No libraries ? Wow. Or "ouch"... > > "Ouch" is correct. But as long as it is fun and nobody > asks me whether I'll be able to meet the deadline, its ok. Oh, I get it. "Programming as Recreation". You sir, are truly a sick individual ;-) (Actually, I can't wait til retirement so I can work on stuff just for fun) -- Derek Parnell Melbourne, Australia http://www.dsource.org/projects/build 23/04/2005 10:43:33 AM |
April 23, 2005 Re: [ot]D is #1 in the Shootout | ||||
---|---|---|---|---|
| ||||
Posted in reply to Georg Wrede | On Sat, 23 Apr 2005 03:17:16 +0300, Georg Wrede wrote: > The First OT: anybody ever wonder why my posts look decent in comparson with some others? > > Two things: > > 1) I use a decent newsreader. You do!? I thought you used "Mozilla Thunderbird 1.0" ;-) > 2) I care about how pople reading and responding to my post (and even more, people responding) would feel. I assume you mean "people" instead of "pople" ;-) Just kidding - Aussies in general love pulling the rug from under people who appear a bit 'haughty' and/or 'righteous'. -- Derek Parnell Melbourne, Australia 23/04/2005 10:50:43 AM |
Copyright © 1999-2021 by the D Language Foundation