Hirdetés
- 8000 nit, maradhat? A szaúdiaknál kezd a Honor 600 Pro
- Samsung Galaxy S25 - végre van kicsi!
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- One mobilszolgáltatások
- Bemutatkozott a Poco X7 és X7 Pro
- Xiaomi 15T Pro - a téma nincs lezárva
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Mától Huawei okosórákkal is lehet érintésmentesen fizetni
- Redmi Note 14 5G - jól sikerült az alapmodell
- Xiaomi 17 Ultra - jó az optikája
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
#25954560
#250
üzenetére
1. Igen, alapvetően jobb az operációs rendszerre hagyni a magok kezelését, de bele lehet szólni.
2. Ha nem tudsz dinamikusan szétosztani tetszőleges szálra, akkor írd meg 8ra, igen.
3. Nem értem mit akarsz a memóriaterülteteken optimalizálni. Lehet, hogy csak nem ismerem ezt a technikát.
-
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!
- 4K vs 8K – Megéri-e a 8K TV 2026-ban?
- Kormányok / autós szimulátorok topikja
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Apple MacBook
- Eredeti játékok OFF topik
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Kitolhatja az LGA1700 élettartamát az Intel
- Filmvilág
- Assetto Corsa
- További aktív témák...
- Samsung Galaxy S24 Ultra - Titanium Black - 12/512GB - Megkímélt szép állapotban.
- Apple iPad Air 2 A8X (2014) 16GB Cellular használt
- GAMER PC! Intel Ultra 245 / RTX 5070 / H810M-X WIFI / 32GB DDR5 / SSD 512GB / 700w! BeszámítOK!
- BESZÁMÍTÁS! ASRock B760 i5 14600KF 32GB DDR5 500GB SSD RX 9070 16GB be quiet! Pure Base 500DX 750W
- Apple iPhone 17 Pro 512GB & 1TB Bontatlan Független Összes Szín / 27% áfás ár
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


