-
61. Data: 2017-08-15 09:26:29
Temat: Re: AMD na topie w rankingu?
Od: slawek <f...@f...com>
On Tue, 15 Aug 2017 08:48:13 +0200, Sebastian
Biały<h...@p...onet.pl> wrote:
> Pozwól więc że poczytamy, w punktach,
> dlaczego Fortran jest obecnie
> dobrym jezykiem do obliczeń.
1. Jest szybki, szybszy niż C.
2. BLAS, LAPACK i nie tylko.
3. Nie ma błędów w kompilatorach.
4. Są liczby zespolone i operator potęgowania.
5. Jest szybki.
6. Ma operacje zwektoryzowane.
7. To nie jest ten sam Fortran którego używał twój dziadek.
8. Jest szybki.
9. Optymalizacje.
10. Jest szybki.
11. Mathematica potrafi wygenerować kod w Fortranie.
12. Jest szybki.
13. Niektórzy go lubią, np. fizycy.
14. Jest szybki.
15. Jest łatwy i przyjemny, jeżeli używa się go do obliczeń.
16. Jest szybki.
Jak widzisz, zasadnicza sprawa to prędkość obliczeń. Czy to ma
znaczenie? Program w Fortranie liczy przez trzy lata to, co w innym
języku zajmie pięć lat. A w Asemblerze 35 miesięcy kosztem dwóch lat
dodatkowo na programowanie.
Oczywiście nie chodzi o "zły algorytm". Ten sam algorytm,
dopracowany na maksa, jakieś PDE itp.
-
62. Data: 2017-08-15 12:30:21
Temat: Re: AMD na topie w rankingu?
Od: "M.M." <m...@g...com>
On Tuesday, August 15, 2017 at 9:26:34 AM UTC+2, slawek wrote:
> On Tue, 15 Aug 2017 08:48:13 +0200, Sebastian
> Biały<h...@p...onet.pl> wrote:
> > Pozwól więc że poczytamy, w punktach,
> > dlaczego Fortran jest obecnie
> > dobrym jezykiem do obliczeń.
>
> 1. Jest szybki, szybszy niż C.
> 2. BLAS, LAPACK i nie tylko.
> 3. Nie ma błędów w kompilatorach.
> 4. Są liczby zespolone i operator potęgowania.
> 5. Jest szybki.
> 6. Ma operacje zwektoryzowane.
> 7. To nie jest ten sam Fortran którego używał twój dziadek.
> 8. Jest szybki.
> 9. Optymalizacje.
> 10. Jest szybki.
> 11. Mathematica potrafi wygenerować kod w Fortranie.
> 12. Jest szybki.
> 13. Niektórzy go lubią, np. fizycy.
> 14. Jest szybki.
> 15. Jest łatwy i przyjemny, jeżeli używa się go do obliczeń.
> 16. Jest szybki.
>
> Jak widzisz, zasadnicza sprawa to prędkość obliczeń. Czy to ma
> znaczenie? Program w Fortranie liczy przez trzy lata to, co w innym
> języku zajmie pięć lat. A w Asemblerze 35 miesięcy kosztem dwóch lat
> dodatkowo na programowanie.
>
> Oczywiście nie chodzi o "zły algorytm". Ten sam algorytm,
> dopracowany na maksa, jakieś PDE itp.
Kiedyś miałem adres do bardzo przydatnej i bardzo rzetelnej stronki na
temat wydajności języków programowania, a poprawnie pisząc, na temat
wydajności programów napisanych w tych językach, skompilowanych w
dostępnych narzędziach, uruchamianych w dostępnych środowiskach.
Było kilka zagadnień, od bardzo prostych, do zaawansowanych. Wtedy nie
było wersji z rozróżnieniem na karty graficzne, a nawet na różne
procesory. Była tabelka, w pionie były zagadnienia, w poziomie
(język, narzędzia, opcje, środowisko uruchomieniowe). Z tego co
pamiętam, to wygrywała jakaś najnowsza wersja gcc, tudzież intela, a
może było gcc + wstawki asemblerowe... Fortran chyba był bardzo
wysoko... Ale nie chcę powiedzieć, że nie mam sklerozy, więc pytanie
do was: macie może adresy do takich (aktualnych) stron?
Fajnie byłoby zobaczyć, ile czasu wykonuje się najlepsza implementacja
najlepszego algorytmu jaki przysłali użytkownicy w danym języku/narzędziach
na danej karcie/procesorze.
Pozdrawiam
-
63. Data: 2017-08-15 12:55:55
Temat: Re: AMD na topie w rankingu?
Od: Mateusz Bogusz <m...@o...pl>
> Kiedyś miałem adres do bardzo przydatnej i bardzo rzetelnej stronki na
> temat wydajności języków programowania, a poprawnie pisząc, na temat
> wydajności programów napisanych w tych językach, skompilowanych w
> dostępnych narzędziach, uruchamianych w dostępnych środowiskach.
- http://benchmarksgame.alioth.debian.org/
- https://attractivechaos.github.io/plb/
--
Pozdrawiam,
Mateusz Bogusz
-
64. Data: 2017-08-15 13:39:54
Temat: Re: AMD na topie w rankingu?
Od: slawek <f...@f...com>
On Tue, 15 Aug 2017 03:30:21 -0700 (PDT), "M.M." <m...@g...com>
wrote:
> Fortran chyba
Według CUJ Fortran jest wolniejszy od C. To znaczy jest szybszy w
obliczeniach, ale C lepiej zarządza pamięcią, więc ogólnie może
czasem wygrać z Fortranem. Ale nie musi.
Użytkownicy Fortranu są wyczuleni na wydajność. Nikt nie zaakceptuje
"nowinek" jeżeli towarzyszyłoby im spowolnienie choćby o 0.1%.
Użytkownicy C przełknęli C++, mimo że jest około 20% wolniej. A
użytkownicy C++ akceptują wywołanie przez proxy (np. wzorce
projektowe) i metody wirtualne (minimalnie ale wolniejsze niż zwykłe,
nie mówiąc o inline).
-
65. Data: 2017-08-16 19:54:06
Temat: Re: AMD na topie w rankingu?
Od: wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <N...@g...pl>
ostro mnie straszą, ale i tak zapytam...
na ile nowoczesne procesory są wymyślone, a na ile wygenerowane
kreatorem w java, napierdalającym miliardy tranzystorków coby
maksymalnie dużo instrukcji wykonywać w jednym takcie?
-
66. Data: 2017-08-16 22:07:36
Temat: Re: AMD na topie w rankingu?
Od: "M.M." <m...@g...com>
On Wednesday, August 16, 2017 at 7:54:13 PM UTC+2, wół, wół roboczy, wół dojno
roboczo obronny 'POPIS/EU wrote:
> ostro mnie straszą, ale i tak zapytam...
>
> na ile nowoczesne procesory są wymyślone, a na ile wygenerowane
> kreatorem w java, napierdalającym miliardy tranzystorków coby
> maksymalnie dużo instrukcji wykonywać w jednym takcie?
To jest dobre pytanie, ale byś mógł tak nie napierdalać.
-
67. Data: 2017-08-16 22:10:22
Temat: Re: AMD na topie w rankingu?
Od: Sebastian Biały <h...@p...onet.pl>
On 8/15/2017 1:39 PM, slawek wrote:
> Użytkownicy C przełknęli C++, mimo że jest około 20% wolniej.
W czym jest 20% wolniej?
> A
> użytkownicy C++ akceptują wywołanie przez proxy (np. wzorce projektowe)
> i metody wirtualne (minimalnie ale wolniejsze niż zwykłe, nie mówiąc o
> inline).
A jak nie akceptują?
-
68. Data: 2017-08-16 22:19:44
Temat: Re: AMD na topie w rankingu?
Od: Sebastian Biały <h...@p...onet.pl>
On 8/15/2017 9:26 AM, slawek wrote:
>> Pozwól więc że poczytamy, w punktach,
>> dlaczego Fortran jest obecnie dobrym jezykiem do obliczeń.
> 1. Jest szybki, szybszy niż C.
A jakie dowody i przede wszystki z JAKIEGO POWODU jest szybszy?
> 2. BLAS, LAPACK i nie tylko.
Czy to aby nie jest dostepne z poziomu byleczego?
> 3. Nie ma błędów w kompilatorach.
W niektórych C też.
> 4. Są liczby zespolone i operator potęgowania.
Zupełnie jak w kazdym języku programowania ktory ma cos wspólnego z
liczeniem.
> 5. Jest szybki.
To wiemy.
> 6. Ma operacje zwektoryzowane.
I dlaczego to jest nieosiągalne w innych jezykach?
> 7. To nie jest ten sam Fortran którego używał twój dziadek.
Nie wątpie.
> 8. Jest szybki.
To wiemy.
> 9. Optymalizacje. 10. Jest szybki.
To wiemy. Zaczynam jestak zastanawiać się dlaczego. Że niby potrafi
wykorzystać SSE4 i GPU? A może korzysta z utajnionych rdzeni CPU że kod
generowany jest lepszy? Co czyni Fortran szybszym? Co magicznego
generowane jest w asm co powoduje ze C NIGDY taki nie będzie? bo mam
przeczucie że ... nic.
> 11. Mathematica potrafi wygenerować kod w Fortranie.
Eeee... to ma być niby zaleta fortrana czy Mathematica?
> 12. Jest szybki.
A o ile szybszy niż inne wiodace języki? Biorę C i licze z uzyciem
bibliotek Fortrana.
> 13. Niektórzy go lubią, np. fizycy.
To raczej zaliczyłby do wad - warto zerknąc czasem jakiej jakości kod
generowały pokolenia fizyków, a sam miałem okazje kiedyś w tym grzebać i
nigdy więcej.
> 14. Jest szybki.
No ale szybki czy szybszy albo wręcz najszybszy?
> 15. Jest łatwy i przyjemny, jeżeli używa się go do obliczeń.
Wątpie czy jest przyjemny. Fortran nie był przyjemnym językiem. Nigdy
nie był.
> 16. Jest szybki.
No super. C tez jest szybki. C++ też. Java też. W ogóle wiele rzeczy
jest szybkich, kwestia doboru test case. Jaki testcase powoduje że
fortran jest szybki i dlaczego?
> Jak widzisz, zasadnicza sprawa to prędkość obliczeń.
Co jest o tyle zastanawiające że całkiem sporo kodu do obliczeń powstaje
w C - szczegolnie na klastry. Czyżby nie wiedzieli?
> Czy to ma
> znaczenie?
Pewnie tak, tym wieksze moje zdziwienie że licza w C. Ale to pewno głąby.
> Program w Fortranie liczy przez trzy lata to, co w innym
> języku zajmie pięć lat.
Stop. Dowód.
> A w Asemblerze 35 miesięcy kosztem dwóch lat
> dodatkowo na programowanie.
Stop. Dowód.
> Oczywiście nie chodzi o "zły algorytm". Ten sam algorytm, dopracowany
> na maksa, jakieś PDE itp.
Stop. Dowód.
-
69. Data: 2017-08-16 22:25:15
Temat: Re: AMD na topie w rankingu?
Od: slawek <f...@f...com>
On Wed, 16 Aug 2017 22:10:22 +0200, Sebastian
Biały<h...@p...onet.pl> wrote:
> W czym jest 20% wolniej?
Przejście od C do C++ obniża prędkość. Niedużo. Ale jak mierzyłem to
jakieś 20%.
-
70. Data: 2017-08-16 22:26:46
Temat: Re: AMD na topie w rankingu?
Od: slawek <f...@f...com>
On Wed, 16 Aug 2017 22:19:44 +0200, Sebastian
Biały<h...@p...onet.pl> wrote:
> Zupełnie jak w kazdym języku programowania ktory ma cos wspólnego z
> liczeniem.
A to oświeć mnie jak ten operator wygląda w C ???