Új hozzászólás Aktív témák
-
Vico87
tag
válasz
proci985 #1724 üzenetére
Én így gondolom: ha elfogadható egy felügyelt környezet (Java VM, .NET CLR) overheadje (és az üzleti/web alkalmazások esetében az, webes esetben a PHP-t nem is említve), akkor a C++ függvényhívások overheadje is elfogadható. Ezeknél az alkalmazásoknál a tiszta, karbantartható kód az elsődleges szempont.
Teljesítménykritikus esetben adott helyzettől függ, hogy mennyit vagyunk hajlandók áldozni az olvashatóságból/érthetőségből a teljesítményért. Néhány esetben megéri a mikrooptimalizálás, ahol már tényleg arra mész, hogy minimalizáld a cache-miss-t, az elágazásokat, stb... de ez általában nem triviális kódot eredményez és kevés esetben hoz látványos pluszt. Persze ha ezt a kódot megfelelően dokumentálod, akkor nincs gond.
A Visual C++ tud olyat, hogy __forceinline, ami egyrészt kierőszakolja egy függvény inline-osítását, másrészt így az optimalizáló jobb eredményt ad, mert a "hívást" a kontextusával együtt képes feldolgozni.
-
dabadab
titán
válasz
proci985 #1724 üzenetére
Altalanos kodban - foleg desktopra szantban (de igazabol egyre inkabb mobilfronton is igaz) - nincs ertelme igazan a sebessegen meg a memorian gorcsolni, ha az ember nem csinal direkt okorsegeket, akkor nem lesz baj. Ha meg megis valahol feltunoen lassunak bizonyul, akkor meg az ember elokapja a profilert es optimalizalja azt az egy helyet, ami lelassitja.
En hajlamos vagyok maskepp latni a dolgokat, mert munkaidoban mondjuk a viruskereso engine CPU emulatorat pofozom es ha elvaras, hogy minden megtalalt .exe-t futtassa az elso par millio utasitasig, akkor ott tenyleg figyelni kell a sebessegre - ugyanakkor ha nem ilyen kod van, akkor sima C stilusu tomb helyett en is inkabb std::vectort hasznalok es magasrol teszek arra, hogy valamivel tobb processzorido meg memoria kell hozza, a gyakorlatban ezt siman behozza ott, hogy kenyelmesebb a hasznalata meg nincs buffer overflow.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Keresünk dokkolókat
- LG 34WQ75X-B - 34" Ívelt IPS Panel - 3440x1440 2K QHD - 60Hz 5ms - FreeSync - USB Type-C 90W
- BESZÁMÍTÁS! ÚJ AMD Ryzen 5600X 5700X 5800X 5900X processzor 3 év garancia 27% áfa termékbeszámítás
- BESZÁMÍTÁS! Gigabyte B760M i7 12700K 16GB DDR4 512GB SSD RX 6700 XT 12GB Rampage SHIVA Enermax 750W
- Kingmax 2x2GB DDR3 RAM eladó
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest