- btz: Internet fejlesztés országosan!
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- droidic: Időutazás floppyval: A 486-os visszavág PCem-men
- sziku69: Fűzzük össze a szavakat :)
- LordAthis: Ismét egy "Idióta" A.I. Projekt, hogy meglovagolja az aktuális trendeket...
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Klaus Duran: Youtube AI szinkron
- votlage71: Kábel menedzsment
Hirdetés
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
#25954560 #248 üzenetére
Több magot akkor fog kihasználni, ha több szálon fut. Ahhoz meg az kell, hogy a feladatot lebontsd párhuzamosan végezhető műveletekre, lehetőleg hasonló számításigénnyel. Mindezt ideális esetben tetszőleges számú szálra, például az adatmennyiség n részre osztásával. Általában ehhez szükséges valami extra művelet, ami a részműveletek eredményéből összerakja a végeredményt. Például ha az a feladat, hogy készíts fényességdiagramot egy fényképről, akkor a képet feloszthatod annyi részre ahány mag van és a részekre párhuzamosan végrehajtod a számlálást. Végül pedig összeadod a részeredményeket. Persze ha lehetséges, akkor menet közben is egyből aggregálhatsz, csak akkor figyelni kell a szinkronizálásra. (Amire persze amúgy is figyelni kell). Ha eleve több feladat van (mint például egy web szerver esetén) akkor tipikusan a thread pool architektúrát szokták alkalmazni, amikoris az n (vagy n-1) végrehajtó szál párhuzamosan, de önállóan dolgozza fel a kéréseket. A feladatokat funkcionálisan is szét lehet bontani, csak ekkor nagyobb probléma az egyenlő elosztás illetve a tetszőleges skálázódás. Pl. egy játék esetén lehet dedikált futási szála a rajzolásnak, a hangkezelésnek, a hálózatkezelésnek -- csak ezek ugye közel sem azonos processzorigényűek.
64 bites architektúra általában nem igényel speciális kódot, de persze ki lehet használni az előnyeit a nagyobb címtartománynak. Például ha van sok adatot tartalmazó fájlod amit eddig seek/read módon használtál véletlen elérésre, azt most nyugodtan bemappolhatod (jajj) a memóriába és így majd az operációs rendszer a hardver segítségével meggyorsíthatja a működést.
Ugyanakkor át kell nézni a jelenlegi programot, nem végez-e trükköket (tipikusan pointer -> int -> pointer konverziót) ami nem működik 64 biten.Az x86-64 továbbá nem csak azt jelenti, hogy 64 bites a címtartomány, hanem több regiszter is van. Ezzel viszont c++ esetén elég a fordítónak foglalkozni.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- MSI MAG 341CQP QD-OLED 34" UWQHD ívelt Gaming monitor + több mint 3 év garancia
- Sony PlayStation 5 Media Remote eladó
- Eladó Xiaomi Mi 10 5G 8GB / 128GB Twilight Gray Szinte karcmentes!
- iPad Pro 12.9" 4.Gen 2020 1TB Space Gray Wifi cellular, Garanciával, üzletből
- Asztali PC , i5 11400F , RTX 3060 12GB , 16GB DDR4 , 512GB NVME , 2TB HDD
- Telefon felváráslás!! iPhone 15/iPhone 15 Plus/iPhone 15 Pro/iPhone 15 Pro Max
- Beszámítás! Samsung Galaxy Tab S6 Lite 2020 64GB 4G tablet garanciával hibátlan működéssel
- iKing.Hu Motorola Edge 60 Pro Green Használt, karcmentes állapotban 512 GB tárhely
- DELL PowerEdge R640 rack szerver - 2xGold 6138 (20c/40t, 2.0/3.7GHz), 64GB RAM,4x1G, H730 1GB, áfás
- Ritkaság! Hibátlan Prémium felsőkategóriás LGA 1700 Alaplap! Asus Rog Strix Maximus Hero Z790 Wi-Fi
Állásajánlatok
Cég: FOTC
Város: Budapest