-
Data: 2017-07-10 16:51:10
Temat: Re: Algorytm hex,dec<->liczba
Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Monday, July 10, 2017 at 4:22:52 PM UTC+2, s...@g...com wrote:
> > > W porównaniu do Java i C# jest kompilowany do kodu maszynowego a
> > nie d=
> > > o wirtualnej maszyny. Przez co działa z pełną prędko?=
> > > ?cią sprzętu na którym jest uruchamiany.
> >
> > No to mędrku wpisz w Google JIT compilation.
>
> Wiem co to jest, tyle, że to nie są normalne programy bo wymagają maszyn
wirtualnych. JIT to i tak nie są tak szybkie jak kod generowany przez kompilator C++.
A C, C++ i D to normalne języki produkujące samodzielne exe i dll. Styl też się
liczy! Bo jeśli miałbym do czegoś porównać Java czy C# to chyba jedynie do sztucznej
ręki albo sztucznej nogi...
Efektywność kodu generowanego przez JIT zależy generalnie od jakości
JITa. Tak samo jak efektywność kodu maszynowego zależy od
optymalizatora. Generalnie też zgadzam się, że kiedyś (i pewnie
nadal) kod generowany przez JITy dla kodu bajtowego Javy był
mniej efektywny pod kątem czasu wykonania od kodu generowanego przez
optymalizatory zamieszczane w kompilatorach języków C++. To tak
generalnie, szczegółowo sprawa jest głębsza i z użycia kodu
pośredniego dla JITa wiąże się szereg zalet i wad, nie tylko
związanych z efektywnością generowanego kodu.
Po pierwsze, JIT dla kodu pośredniego może zrobić to co robi PGO,
czyli może zebrać statystyki i wygenerować kod maszynowy z uwzględnieniem
tychże statystyk. Jeśli użytkownik używa w bardzo niestandardowy
sposób danego oprogramowania, to JIT przynajmniej teoretycznie,
powinien generować bardziej efektywny kod.
Po drugie, JIT może optymalizować pod daną platformę sprzętową, więc
znowu teoretycznie JIT może wygenerować lepszy kod.
Po trzecie, optymalizowanie kodu jest problemem bardzo trudnym. Wniosek
z tego taki, że wszelkie próby bardziej zaawansowanej optymalizacji
najpierw zmuszą użytkownika do oczekiwania na wynik tejże optymalizacji,
żeby potem przy każdym użyciu zyskiwał trochę czasu. W przypadku gdy
od razu kompilujemy do kodu maszynowego, możemy (teoretycznie) włączyć
jakiś optymalizujący program na tydzień i rozdać gotowy-zoptymalizowany
kod ostatecznym użytkownikom.
Po czwarte, JIT (teoretycznie) może zapisywać gdzieś na jakimś serwerze
częściowe wyniki optymalizacji, a inni mogą korzystać z gotowców.
Po piątek, programy napisane w językach kompilowanych bez kodu
pośredniego można rozprowadzać z otwartym źródłem, więc każdy użytkownik
teoretycznie może sobie skompilować i zoptymalizować u siebie na
swój sprzęt i każdy może włączyć PGO na swój przypadek użycia.
W Javie kijowe jest to, że TRZEBA użytkownikowi dać kod bajtowy, który
(podobno nawet obfuskany) łatwo zamienia się do kodu źródłowego
Javy. W przypadku C++ to my decydujemy, czy dać że źródłem, czy tylko
kod wynikowy. Gdy dajemy ze źródłem, to (teoretycznie) wychodzi na to
samo co w przypadku JITa.
Pozdrawiam
Następne wpisy z tego wątku
- 10.07.17 17:44 AK
- 10.07.17 18:08 wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU
- 10.07.17 18:17 AK
- 10.07.17 18:40 wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU
- 10.07.17 20:03 s...@g...com
- 10.07.17 20:13 s...@g...com
- 10.07.17 23:48 M.M.
- 11.07.17 16:20 slawek
- 11.07.17 16:25 slawek
- 11.07.17 16:48 s...@g...com
- 11.07.17 17:53 slawek
- 11.07.17 18:25 s...@g...com
- 11.07.17 19:16 slawek
- 11.07.17 22:30 M.M.
- 11.07.17 23:53 slawek
Najnowsze wątki z tej grupy
- 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
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-14 Dobra zmiana
- 2024-11-14 Czy prezydent może ułaskawić od zadośćuczynienia? [A. Lepper odszkodowania]
- 2024-11-14 Gliwice => Network Systems Administrator (IT Expert) <=
- 2024-11-14 Gliwice => Administrator Systemów Sieciowych (Ekspert IT) <=
- 2024-11-13 Filtr do pompy ruskiej
- 2024-11-12 Gdzie kosz?
- 2024-11-13 elektrycznie
- 2024-11-12 Jebane kurwa, kurwy.
- 2024-11-13 karta parkingowa
- 2024-11-13 Wl/Wyl (On/Off) bialy/niebieski
- 2024-11-12 I3C
- 2024-11-13 Kraków => DevOps Engineer (Junior or Regular level) <=
- 2024-11-13 Łódź => Senior SAP HANA Developer <=
- 2024-11-13 Zabrze => Senior PHP Symfony Developer <=
- 2024-11-13 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=