Kezdőoldal » Számítástechnika » Programozás » Egy algoritmus gyorsabban...

Egy algoritmus gyorsabban lefut, ha a futásidő végéig letiltom a számítógép IO (egér, képernyő stb. ) szolgáltatásait?

Figyelt kérdés
Lehet ilyet Linuxon? Ha igen, akkor hogyan? Még milyen szolgáltatást érdemes kikapcsolni az optimalizálás érdekében. Fontos, hogy utána automatikusan helyreálljon minden, ne kelljen a gépet újraindítani.
2020. ápr. 27. 07:44
 1/3 anonim ***** válasza:
72%
A mai több magsos procik esetén nem lesz számottevő, gyorsulás. Meg lehet írni úgy, hogy kihasználja a több magot maga a program, meg lehet több szálon is futtatni. Az ilyen hosszú ideig futó algoritmusok esetén már nagyon kell az optimalizálás. Erre a linux alkalmas, de át kell nézni magát az algoritmust. Pl egy trükk ha teljes kipróbálás, és a futások függetlenek egymástól akkor meg lehet úgy csinálni, hogy pl. 0-999-ig fut az egyik magon, 1000-1999-ig a másikon, 2000-2999-ig a harmadikon stb. Párhuzamos programozás, erőforrás optimalizáció a kereső kulcs és ezek angol megfelelői.
2020. ápr. 27. 08:05
Hasznos számodra ez a válasz?
 2/3 anonim ***** válasza:
77%

Elenyésző lenne az időnyereség. Ez a C64-es időkben volt divat, tiltsunk le mindent, ami épp abban a pillanatban nem kell, még a képernyőt is kapcsoljuk ki, és így nyertünk 10% gyorsulást.

A ki- és bemenet kezelése azóta nem lett számottevően erőforrásigényesebb (sőt, mióta létezik GPU, a proci már csak közvetetten foglalkozik a képi megjelenítéssel), a gépeink viszont több, mint ezerszer gyorsabbak lettek. Szóval persze, lehet ilyesmivel operálni, és nyernél rajta rettentően optimális és szélsőséges esetben 1%-ot.

Egyszerűen nem éri meg. Főleg, hogy egy esetleges jobb algoritmussal, és több magra optimalizálással nagyságrendekkel többet tudnál nyerni. Ironikus lenne, ha mindent letiltanál, meleltte meg 7 procimag csak pihenne.

Egyébként: közönséges felhasználói jogokkal ezt nem lehetne megoldani.

Az ötlet tényleg nem rossz, csak ma már sok értelme nem lenne.

2020. ápr. 27. 08:12
Hasznos számodra ez a válasz?
 3/3 anonim ***** válasza:
51%

Sajnos a két első hülyeséget beszél.

A kijelző mint output eszköz nem terheli a CPU-t, a beviteli eszközök viszont igen és a megszakítás elég sok proci időt igényel.

A szervizek közül is mondhatni minden másodikat, ha nem többet ki lehet lőni, így igen jelentős gépídő spórolható meg az algoritmusod számára.

Sok magos proci esetén is fogható számottevő nyereség, persze nem úgy, ahogy az első válaszadó írja.

2020. ápr. 27. 11:18
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!