-
Data: 2017-08-25 16:04:07
Temat: Re: Co jest nie tak z C++ (było: Rust)
Od: Adam M <a...@m...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Thursday, August 24, 2017 at 6:23:30 PM UTC-4, g...@g...com wrote:
> W dniu czwartek, 24 sierpnia 2017 23:48:16 UTC+2 użytkownik Adam M napisał:
>
> > >
> > > Tyle że programiści często myślą, że to, że C++ daje dużą kontrolę
> > > nad sprzętem, to dobra rzecz.
> > > Myślę, że jest dokładnie odwrotnie. Im mniej intymnych szczegółów
> > > język może wiedzieć o systemie, na którym jest uruchamiany, tym
> > > lepszą robotę mogą odwalić narzędzia uruchomieniowe.
> >
> > Widzę że wszyscy tutaj wieszaja psy na tych biednych krzyżowcach
>
> nie "wieszają psy", tylko używają argumentów.
>
> > - ale jak mówi przsłowie - Jak trwoga to do Boga
> > - i tak jeśli musisz napisac program który musi rozmawiac
> > ze sprzętem to masz tak naprawdę tylko trzy jezyki popularne
> > do dyspozycji: Macro Assembler (nazwywanie tego językiem to
> > dość duże naciągniecie - ale niech bedzie), C lub C++
> > (przez miłosierdzie nie wspominam tu ADY ;-) )
> >
> > Osobiście uważam ze ignorowanie sprzetu prowadzi braku
> > zrozumienia dlaczego oprogramowanie zachowuje sie w ten
> > a nie inny sposób.
>
> często właśnie ignorowanie sprzętu jest zbawienne dla twojego programu.
> dlatego jak uruchamiasz program napisany w clojure czy erlangu
> na 16-rdzeniowym komputerze, to działa prawie 16 razy szybciej
> niż na 1-rdzeniowym. A w C++, o ile nie użyjesz jakichś bibliotek,
> to raczej nie masz co liczyć na tego rodzaju przyspieszenie (a jeśli
> nawet użyjesz, to pewnie i tak masz błędy)
To jest przyklad tzw. magicznego myslenia - napisze program w Erlangu (to nic ze
dziadowski algorytm i jest tylko jedno-watkowy) ale uruchomie go na 16-to rdzeniowym
procesorze i to spowoduje magiczne ulepszenie algorytmu i 16-kroty przyrost
predkosci. Czysta magia. Amdahl sie w grobie przewraca jak slyszy takie nonsensy na
temat przyrostu predkosci na systemach wieloprocesorowych.
Dodakowo ten biedny Erlang wie w jakis magiczny sposob jak ma to uruchomic na tym
16-rdzeniowym procesorze.
>
> > Jeśli kolega zadaje takie pytanie to tutaj jest link który
> > może się przydać aby zrozumieć za automatyczne zwalnianie
> > i odśmiecanie nie zawsze jest dobrym rozwiązaniem:
> > https://www.dynatrace.com/resources/ebooks/javabook/
impact-of-garbage-collection-on-performance/
>
> problem z tą lekturą jest taki, że niewiele z niej wynika.
> proponuję zerknąć np, tutaj
> https://scholarship.rice.edu/bitstream/handle/1911/1
6127/8900220.PDF?sequence=1&isAllowed=y
> albo tu
> https://www.scss.tcd.ie/Lucy.Hederman/LHMScDissertat
ion.pdf
> albo tu
> http://www.pipeline.com/~hbaker1/Share-Unify.html
> albo tu
> https://pdfs.semanticscholar.org/5fe3/c770c0dfbb05a1
6fe1b969678c8ee3b1a461.pdf
>
> zasadniczo możliwością, którą brak automatycznego odśmiecania
> przed Tobą otwiera, jest możliwość robienia wycieków pamięci.
Nie uwazam że ośmiecanie jest całkowicie złe - w wielu przpadkach daje bezpieczeństwo
(zwłaszcza niedoświadczonym programistom). Moim nawi ększym problemem jest podejście
wszystko albo nic do automatycznego zwalniania pamięci i odśmiecania - zabiera to
wolnosc programiscie w decydowaniu jak program ma sie zachowywac. Podjeście ze
alternatywą do automatycznego zwalniania i odśmiecania sa wycieki pamięci jest jak
proponowanie wprowadzenia zakazu sprzedazy nozy - no bo przecież można kogoś zadzgać.
Następne wpisy z tego wątku
- 25.08.17 16:27 g...@g...com
- 25.08.17 16:40 g...@g...com
- 25.08.17 17:41 AK
- 25.08.17 17:49 AK
- 25.08.17 17:52 g...@g...com
- 25.08.17 17:55 AK
- 25.08.17 18:00 AK
- 25.08.17 18:01 AK
- 25.08.17 18:26 AK
- 25.08.17 18:54 AK
- 25.08.17 20:04 slawek
- 25.08.17 20:20 slawek
- 25.08.17 20:57 Adam M
- 25.08.17 22:22 Wojciech Muła
- 25.08.17 22:52 slawek
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 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??
Najnowsze wątki
- 2025-02-10 Spalił się spaliniak
- 2025-02-10 zarowka wifi - z sensowna apka lub lepiej albo lokalnie lub przez web. I zeby harmonogram miala
- 2025-02-10 Chrzanów => Programista NodeJS <=
- 2025-02-10 Kraków => DevOps Engineer (Junior or Regular level) <=
- 2025-02-10 Dlaczego takie preferencje banków?
- 2025-02-10 Białystok => iOS Developer (Swift) <=
- 2025-02-10 Mińsk Mazowiecki => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-10 Białystok => System Architect (Java background) <=
- 2025-02-10 Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- 2025-02-10 Szczecin => Senior Field Sales (system ERP) <=
- 2025-02-10 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-02-10 Chrzanów => Specjalista ds. public relations <=
- 2025-02-10 Chrzanów => NodeJS Developer <=
- 2025-02-10 Warszawa => JavaScript / Node / Fullstack Developer <=
- 2025-02-10 Gliwice => Ekspert IT (obszar systemów sieciowych) <=