Article View: be.comp.programming
Article #11124Re: oproep aan de programmeurs:wat moet ik kiezen ?
From: Pieter Philippaerts
Date: Tue, 19 Feb 2002 17:06
Date: Tue, 19 Feb 2002 17:06
67 lines
4584 bytes
4584 bytes
> Je bedoelt: 2x in geoptimaliseerde code t.o.v. ongeoptimaliseerde code. > Wel graag er even bijvermelden dat de VC6 en VC7 tijden op debug > executables zijn bepaald. Dan zijn automatisch alle optimalisaties > uitgeschakeld. Die moesten ze ook uitschakelen, want zelfs VC6 optimaliseert > een lege loop helemaal weg en komt dus normaal gesproken op 0.0 seconden uit. > Dus die 2x is appels met peren vergelijken. Aangezien de beta van .NET (waarop de benchmark is uitgevoerd) nog niets anders dan naar debug code kon compilen, hebben ze VC6 ook naar debug laten compilen... eerlijk is eerlijk. > > StringBuilder operaties (appenden in dit geval) waren dan weer 0.468 seconden > > in C# terwijl (gebufferde) CString operaties in unmanaged C++ 0.703 seconden duurde. > > Kopieren van strings met memcopy was dan weer iets sneller als het kopieren dmv. > > een StringBuilder. > Waar is de standaard string van C++, std::string? Geen idee, ik heb de test niet opgesteld en ik ga me ook niet opwerpen als de man die benchmarks voor C++ kan opstellen. > Ze vergelijken wel met een char-array en memcpy, en die is veel sneller. > Maar die wordt gelijk opzij geschoven onder het mom "dat is ouderwets". Niet ouderwets maar eerder 'het is moeilijker in gebruik en laat gemakkelijker fouten toe en weegt daarom niet op tegen de voordelen'. (die 'voordelen' hangen natuurlijk af van het type applicatie je schrijft, maar ik neem aan dat het hier over algemene administratieve applicaties gaat). > Mijn indruk is dat ze niet alle mogelijkheden van C++ hebben benut. Is dat dan mogelijk? <g> Hetzelfde geldt ongetwijfeld ook omgekeerd voor C#. Niet vergeten dat de meeste programmeurs (vooral op het moment dat die benchmark gemaakt is) nog newbies zijn (aangezien de taal nog maar pas uit is). > Zucht, ze gebruiken /O1. Dat is optimaliseren voor size, en niet voor > snelheid. Als ze dat al fout doen... In C# was er toen helemaal geen mogelijkheid om te optimizen... > Let op je eigen 'kan zijn'. Bij deze benchmark is niet het maximale uit C++ > gehaald. Daardoor kan ik de uitkomsten van de benchmark niet serieus nemen. Hetzelfde kan gezegd worden over C#... Het zou leuk geweest zijn als ze ook de code zouden gepost hebben samen met hun resultaten... (misschien hebben ze dat gedaan hoor.. heb er gewoon nog niet achter gezocht). > PS: Sterker nog, als zelfs met zulke verdraaiingen C++ nog in de buurt van C# > komt, dan denk ik dat echt geoptimaliseerd C++ rondjes draait rond C#. Zoals al eerder gezegd, C# compilede ook naar debug code... Mvg, Pieter Philippaerts
Technical Details
Message-ID:
<1014138117.990176@seven.kulnet.kuleuven.ac.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news-x2.support.nl!amsnews01.chello.com!surfnet.nl!naxos.belnet.be!news.belnet.be!not-for-mailReferences:
<uXu88.122912$rt4.11582@afrodite.telenet-ops.be> <1013109746.799866@seven.kulnet.kuleuven.ac.be> <3C63C40B.BA1DDAA9@iae.nl> <1013181054.194148@seven.kulnet.kuleuven.ac.be> <3C63EE8A.DEE29046@iae.nl> <1013187868.875791@seven.kulnet.kuleuven.ac.be> <3c6c35f1.5840688@newszilla.xs4all.nl> <1013742119.309832@seven.kulnet.kuleuven.ac.be> <3c6e35cf.1533535@newszilla.xs4all.nl> <1013895537.659605@seven.kulnet.kuleuven.ac.be> <3c6fefb8.1216829@newszilla.xs4all.nl> <1013973821.829929@seven.kulnet.kuleuven.ac.be> <%3Ub8.27957$ql6.2438153@zwoll1.home.nl> <1013994968.717889@seven.kulnet.kuleuven.ac.be> <3C706D11.C90F42C2@wanadoo.nl> <1014049007.567811@seven.kulnet.kuleuven.ac.be> <3C71356C.369677EC@wanadoo.nl>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: 107324,65d4c4d6a1e8dc39 X-Google-Attributes: gid107324,public X-Google-Thread: fcea4,65d4c4d6a1e8dc39 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2002-02-19 09:02:00 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news-x2.support.nl!amsnews01.chello.com!surfnet.nl!naxos.belnet.be!news.belnet.be!not-for-mail From: "Pieter Philippaerts" <Pieter@allapi.net> Newsgroups: be.comp.programming,nl.comp.programmeren Subject: Re: oproep aan de programmeurs:wat moet ik kiezen ? Date: Tue, 19 Feb 2002 18:06:27 +0100 Organization: KULeuvenNet Lines: 69 Message-ID: <1014138117.990176@seven.kulnet.kuleuven.ac.be> References: <uXu88.122912$rt4.11582@afrodite.telenet-ops.be> <1013109746.799866@seven.kulnet.kuleuven.ac.be> <3C63C40B.BA1DDAA9@iae.nl> <1013181054.194148@seven.kulnet.kuleuven.ac.be> <3C63EE8A.DEE29046@iae.nl> <1013187868.875791@seven.kulnet.kuleuven.ac.be> <3c6c35f1.5840688@newszilla.xs4all.nl> <1013742119.309832@seven.kulnet.kuleuven.ac.be> <3c6e35cf.1533535@newszilla.xs4all.nl> <1013895537.659605@seven.kulnet.kuleuven.ac.be> <3c6fefb8.1216829@newszilla.xs4all.nl> <1013973821.829929@seven.kulnet.kuleuven.ac.be> <%3Ub8.27957$ql6.2438153@zwoll1.home.nl> <1013994968.717889@seven.kulnet.kuleuven.ac.be> <3C706D11.C90F42C2@wanadoo.nl> <1014049007.567811@seven.kulnet.kuleuven.ac.be> <3C71356C.369677EC@wanadoo.nl> NNTP-Posting-Host: seven.kulnet.kuleuven.ac.be X-Trace: naxos.belnet.be 1014138118 3906 134.58.127.12 (19 Feb 2002 17:01:58 GMT) X-Complaints-To: abuse@belnet.be NNTP-Posting-Date: Tue, 19 Feb 2002 17:01:58 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4807.1700 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700 Cache-Post-Path: seven.kulnet.kuleuven.ac.be!unknown@localhost X-Cache: nntpcache 2.4.0b5 (see http://www.nntpcache.org/)