-
X-Received: by 10.31.96.204 with SMTP id u195mr23533vkb.16.1503768741071; Sat, 26 Aug
2017 10:32:21 -0700 (PDT)
X-Received: by 10.31.96.204 with SMTP id u195mr23533vkb.16.1503768741071; Sat, 26 Aug
2017 10:32:21 -0700 (PDT)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!news.unit0.net!peer01.am4!peer.am4.highwinds-media.com!pee
r01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!y192no686329itb.0!
news-out.google.com!f21ni541qta.1!nntp.google.com!e2no927581qta.1!postnews.goog
le.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Sat, 26 Aug 2017 10:32:20 -0700 (PDT)
In-Reply-To: <a...@n...v.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=71.2.36.158;
posting-account=aFGPVQoAAADngh59qlchYygiuB87zBBU
NNTP-Posting-Host: 71.2.36.158
References: <f...@g...com>
<1...@g...com>
<7...@g...com>
<b...@g...com>
<a...@n...v.pl>
<2...@g...com>
<a...@n...v.pl>
<on23a3$85s$1@node1.news.atman.pl>
<a...@n...v.pl>
<on75ke$g4u$1@node2.news.atman.pl>
<5...@g...com>
<onfotu$lh6$1@node1.news.atman.pl>
<0...@g...com>
<3...@g...com>
<6...@g...com>
<c...@g...com>
<d...@g...com>
<5...@g...com>
<c...@g...com>
<3...@g...com>
<6...@g...com>
<c...@g...com>
<6...@g...com>
<f...@g...com>
<0...@g...com>
<f...@g...com>
<d...@g...com>
<5...@g...com>
<0...@g...com>
<1...@g...com>
<0...@g...com>
<a...@n...v.pl>
<0...@g...com>
<a...@n...v.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <6...@g...com>
Subject: Re: Co jest nie tak z C++ (było: Rust)
From: Adam M <a...@m...com>
Injection-Date: Sat, 26 Aug 2017 17:32:21 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Body-CRC: 556777204
X-Received-Bytes: 7624
Xref: news-archive.icm.edu.pl pl.comp.programming:211347
[ ukryj nagłówki ]On Friday, August 25, 2017 at 4:52:15 PM UTC-4, slawek wrote:
> On Fri, 25 Aug 2017 11:57:45 -0700 (PDT), Adam M
> > On Friday, August 25, 2017 at 2:04:20 PM UTC-4, slawek wrote:
> > > On Fri, 25 Aug 2017 07:04:07 -0700 (PDT), Adam M
> > > Amdahl jest przereklamowany.
>
> > To jest bardzo mocne stwierdzenie.
>
> Wiem.
>
> > Czy mozna poprosic o dokladniejsze wyjasnienie
> > co tez kolega mial na mysli
>
> Wyjaśnię to dwa razy: raz na chłopski rozum, raz na przykładzie
> pewnego programu.
>
> Wyobraź sobie że jesteś gospodarzem. Masz jakieś 20 morgów i 4
> parobków. Prawo Ahmadla i zdrowy rozsądek podpowiadają że 4000
> parobków nie zapewni 1000 krotnego wzrostu tempa żniw. True.
>
> A co byłoby, gdybyś miał nie 20 morgów, ale 20 tysięcy morgów? Nadal
> "zrównoleglenie" prac przez zatrudnienie armii tysięcy parobków nie
> miałoby sensu?
>
> Innymi słowy: gdyby kurczowo trzymać się prawa Ahmadla to nie
> istniałaby takie firmy jak MS, Intel, Google, Samsung itd. - każda
> zatrudnia olbrzymie ilości ludzi, a przecież z prawa Ahmadla wynika
> że to niepotrzebne.
>
> A teraz drugi przykład. Program czyta liczbę 64 bitową, wykonuje
> obliczenia, wypisuje wynik jako ułamek dziesiętny. Czytania i
> wpisywania nie da się zrównoleglić. Obliczenie każdej cyfry wyniku
> jest całkowicie niezależne. Program oblicza wynik z dokładnością do 4
> cyfr po przecinku.
>
> Zgodnie z prawem Ahmadla nie ma sensu używać zbyt wielu procesorów.
> To oczywiste.
>
> Ale jeżeli zamiast 4 cyfr będziesz chciał mieć wynik z 40 cyframi
> (albo z 40 tysiącami cyfr), to prawo Ahmadla nie podważa sensowności
> zastosowania odpowiednio większej liczby procesorów.
>
> Czyli prawo Ahmadla nie jest do stosowania w ciemno, bez sprawdzania
> założeń przy jakich je sformułowano. Przecież nie używasz twierdzenia
> Pitagorasa do obliczania objętości kuli.
>
> Podobna sytuacja była ze słynnym "640 kilobajtów wystarczy każdemu".
> To była prawda... Ale tylko przy założeniu że PC będzie służył tylko
> do tego co robiono na Spectrum itp. A to założenie okazało się
> fałszywe.
To bardzo ładne stwierdzenia - niestety nie do końca prawdziwe:
- po pierwsze kolega myli problem szczegółowy z problemami ogólnym biorac przyklad
kolegi z morgami - tak to jest prawda ze do 20tysiecy potrzeba znacznie wiecej
parobkow - ale problem tych 20morgow dalej jest tak samo trudny - miałem niestety
doczyniania wielokrotnie z takimi programistami/projektantami systmow - z punktu
wiedzy byli nie do pobicia - znali wiele języków perfekcyjnie, znali algorytmy, cala
teoria w jednym palcu - jednym slowem tytan wiedzy - gdy przyszlo do rozwiazania
problemu to padali jak muchy bo nie potrafili sie zdecydowac jak zabrac sie za
problem (widzieli drzewa ale nie las)
- co do ilosci procesorow - niestety jest bardzo wiele problemow ktore sa niestety
typowo jedno-watkowe - w tym przypadku zastosowanie nawet miliona procesorow nic nie
pomoze dopuki toria algorytmow nie znadzie lepszego algorytmu - ktory da sie
zrownoleglic.
Nie jestem fundamentalista w dziedzinie programowania - ale slepa wiara ze da sie
oderwac programowanie od sprzetu, ze mozna poprawnie programowac bez zrozumienia jak
sprzet na ktorym program bedzie sie wykonywal dziala prowadzi do bardzo poprawnie i
elegancko napisanych i bardzo nieefektywnie dzialajacych programow. I nie mam tu na
mysli 100 linikowego programu pokazujacego wyzszosc np Erlang czy Rust nad C++ ale
zlozonego systemu zaierajacego setk tysiecy lini kodu. Np. eie zycze napisania w
Pytonie czegos wiekszego jak 10-15tys lini kodu:
a) jest to zadanie dla masochisty
b) wiekszosc czasu zostanie spedzona na wyszukiwani bledow spowodowanych zlymi
nazwami zmiennych lub nieporawnymi konwersjami pomiedzy typami (ktore rzekomo w
Pytnie nie powinny stanowic problemu).
c) przez litosc nie wspomne tu nawet o wielowatkowosci w Pytonie
Następne wpisy z tego wątku
- 26.08.17 22:29 M.M.
- 27.08.17 08:07 AK
- 27.08.17 10:18 slawek
- 27.08.17 10:53 fir
- 27.08.17 12:21 AK
- 27.08.17 13:47 fir
- 27.08.17 13:53 M.M.
- 27.08.17 13:56 fir
- 27.08.17 14:56 fir
- 27.08.17 22:20 g...@g...com
- 28.08.17 16:29 Adam M
- 28.08.17 17:29 M.M.
- 28.08.17 17:49 Adam M
- 28.08.17 18:39 M.M.
- 29.08.17 15:26 g...@g...com
Najnowsze wątki z tej grupy
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
Najnowsze wątki
- 2025-06-19 Gdynia => Sales Executive / KAM <=
- 2025-06-19 Warszawa => IT Business Analyst (projects in the telco sector) <=
- 2025-06-19 Lublin => Programista Delphi <=
- 2025-06-19 Warszawa => Scrum Master <=
- 2025-06-19 Warszawa => Solution Architect <=
- 2025-06-19 Warszawa => Software Solution Architect <=
- 2025-06-19 Zakrzewo => Konsultant SAP HCM <=
- 2025-06-19 Zakrzewo => SAP HCM Consultant <=
- 2025-06-19 Poznań => SAP HCR Consultant <=
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-18 Poseł KO mecenas Giertych został pouczony o obowiązującym prawie [z SN]
- 2025-06-18 112
- 2025-06-18 Poznań => MLOps Engineer <=
- 2025-06-18 Gdańsk => Mainframe (z/OS, Assembler) Developer <=