-
X-Received: by 10.49.72.194 with SMTP id f2mr52046qev.34.1364202445427; Mon, 25 Mar
2013 02:07:25 -0700 (PDT)
X-Received: by 10.49.72.194 with SMTP id f2mr52046qev.34.1364202445427; Mon, 25 Mar
2013 02:07:25 -0700 (PDT)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin2!goblin.stu.neva.ru!cyclone01.ams2.highwinds-media.com!voer-me.
highwinds-media.com!npeer01.iad.highwinds-media.com!news.highwinds-media.com!fe
ed-me.highwinds-media.com!t2no15470743qal.0!news-out.google.com!k8ni11100qas.0!
nntp.google.com!ca1no5990479qab.0!postnews.google.com!glegroupsg2000goo.googleg
roups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Mon, 25 Mar 2013 02:07:25 -0700 (PDT)
In-Reply-To: <3...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=178.36.110.253;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 178.36.110.253
References: <5148d9db$0$26710$65785112@news.neostrada.pl>
<4...@g...com>
<1...@g...com>
<kihto6$q3f$1@mx1.internetia.pl>
<c...@g...com>
<3...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a...@g...com>
Subject: Re: Nowoczesne procesory - jak to z nimi jest?
From: "M.M." <m...@g...com>
Injection-Date: Mon, 25 Mar 2013 09:07:25 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 5419
Xref: news-archive.icm.edu.pl pl.comp.programming:202267
[ ukryj nagłówki ]W dniu poniedziałek, 25 marca 2013 08:08:34 UTC+1 użytkownik firr kenobi napisał:
> co do kompilatorow to tez moze byc wlasnie
> tak ze intel icc optymalizuje lepiej niz gcc
> i vcc, np w tym benchmarku
> http://benchmarksgame.alioth.debian.org/u32/performa
nce.php?test=mandelbrot
> najszybszy okazal sie intelowy fortran i to
> prawie dwa razy szybszy niz c w gcc :/
No proszę. Tak podejrzewałem, ale nie wiedziałem.
Teraz widać, różnice dwa razy to coś czego można
się spodziewać.
Pamiętam jak kiedyś dobierałem drobiazgi implementacyjne w
programie szachowym na bardzo wczesnym etapie realizacji.
Chodziło dosłownie o przesuwanie bierek po planszy i o
update kilku pomocniczych statystyk przy okazji przesuwania.
Kompilowałem gcc, wtedy jeszcze na platformę 32bitową. Od
czasu do czasu zauważałem, że po jakiejś drobnej zmianie
kompilator wygenerował kod 2-3 razy szybszy. Dosłownie 50
różnych pomysłów, różnice w wydajności pomiędzy pomysłami
o ułamki procenta, a czasami/nagle różnica o 200-300%. Taki
kod skompilowany potem przy pomocy MSVC++ działał o wiele
wolniej. To było tak, jakbym dobrał konstrukcje językowe,
które kompilator gcc akurat umie zoptymalizować. Więc kilka
przesłanek na to jest, że jakby sztab fachowców przysiadł, to
by napisał kompilator 2-3 razy wydajniejszy.
> - nie przypuszczam zeby fortran byl szybszy od c
Nie zdziwiłbym się, jakby napisanie optymalizatora do
frotrana/ady, było łatwiejsze niż do C/C++.
> wiec wychodziloby ze roznica wynika z
> optymalizacji kodu w asemblerze (icc vs gcc)
No chyba tak, chyba potwierdzają się moje przypuszczenia.
> jest to pewnego rodzaju hipoteza ale jak kogos to
> interesuje to powinien pomierzyc lub conajmniej poczytac
> jakies w miare aktualne porownania bo
> pewnie sa jakies w necie (i moglby wpisac
> wyniki na grupe)
Liczyłem że ktoś bardzo doświadczony w asemblerze coś konkretnego
powie w tym wątku, na razie wszyscy łącznie ze mną bazujemy na
przypuszczeniach.
Przed laty wyszła książka "procesory pentium, narzędzia optymalizacji"
autorstwa Micheal L. Schmit. W którymś z rozdziałów pokazał ręcznie
zoptymalizowaną procedurę w asemblerze, po czym dodał coś w rodzaju
"nie sądzę aby jakikolwiek kompilator zdołał tak zoptymalizować". Myślę,
że to stwierdzenie nadal w jakimś stopniu jest aktualnie, ciekawe tylko w
jakim :)
Odbiegając od tematu...
Ostatnio napisałem w proceduralnym C++ prosty program optymalizacyjny.
Prosty, bo kodu tam raptem 1000 linijek, z czego kod obliczeniowy to
może 400 linii. Kod jest bardzo sprytnie zoptymalizowany, ale patrzę na
niego, patrzę na podejrzane wyniki i się zastanawiam... czy tam na pewno
nie ma błędu? No i właśnie dziś przepisuję w wysokopoziomowym C++,
nafaszerowanym klasami i vectorami... co byłoby gdybym miał ten kod
napisany w asemblerze? Pewnie bym po pierwszej procedurze miał dosyć i
bym wrócić do wysokopoziomowego C++ albo do Javy :)
Pozdrawiam
>
>
>
> mnie osobiscie jak na dzis bardziej interesuje
>
> poznanie rwguł optymalizacji kodu samemu niz
>
> posiadanie hiperoptymalizujacego kompilatora,
>
> oczywiscie wolalbym raczej by kompilator ktorego
>
> uzywam generowal na zadanie lepszego asma
>
> ale nawet bardziej interesuje mnie reczna
>
> optymalizacja - umiem optymalizowac kody w c
>
> choc chcialbym sie nauczyc robic to lepiej
>
> i troche umiem optymalizowac na poziomie asma
>
> (ale tutaj slabo - tez chcialbym sie nauczyc
>
> optymalizowac lepiej )
Następne wpisy z tego wątku
- 25.03.13 10:30 Adam Przybyla
- 25.03.13 10:57 AK
- 25.03.13 11:52 firr kenobi
- 25.03.13 13:48 M.M.
- 25.03.13 14:08 M.M.
- 25.03.13 14:17 wloochacz
- 25.03.13 14:48 AK
- 25.03.13 14:51 M.M.
- 25.03.13 15:07 AK
- 25.03.13 15:12 AK
- 25.03.13 15:35 M.M.
- 25.03.13 15:53 AK
- 25.03.13 16:03 Edek Pienkowski
- 25.03.13 16:10 Edek Pienkowski
- 25.03.13 16:15 AK
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2025-01-04 Zbieranie danych przez www
- 2025-01-04 reverse engineering i dodawanie elementów do istniejących zamkniętych produktów- legalne?
- 2025-01-04 w Nowym Roku 2025r
- 2025-01-04 Warszawa => Specjalista ds. IT - II Linia Wsparcia <=
- 2025-01-04 Warszawa => Java Developer <=
- 2025-01-04 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-04 Warszawa => System Architect (Java background) <=
- 2025-01-04 Wrocław => Application Security Engineer <=
- 2025-01-04 Chrzanów => Specjalista ds. public relations <=
- 2025-01-04 Katowice => Key Account Manager (ERP) <=
- 2025-01-03 Problem z odczytem karty CF
- 2025-01-03 Jazda z Warszawy do Krakowa teslą
- 2025-01-03 Wrocław => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-03 Warszawa => International Freight Forwarder <=
- 2025-01-03 Mińsk Mazowiecki => Area Sales Manager OZE <=