A szoftverfejlesztők a végrehajtási szálak alkalmazásával teszik lehetővé a többmagos processzorok számára, hogy azok a program több részén dolgozhassanak egy időben. Azonban minden egyes programnak saját magának kell kezelnie a threading-et és ez csökkentheti a teljes rendszer teljesítményét. Mivel a végrehajtási szálakat bonyolult programozni, számos fejlesztő nem foglalkozik azzal, hogy alkalmazásai a többmagos processzorok nyújtotta előnyöket kihasználhassák. Következésképpen számos alkalmazás nem olyan gyors, mint amilyen valójában lehetne.
A Mac OS X 10.6 "Snow Leopard" Grand Central Dispatch (GCD) csomagja ezt a problémát hivatott megoldani. A GCD egy rakás technológia gyűjtőneve, amely lehetővé teszi az alkalmazás-fejlesztő számára, hogy az maximális mértékben kihasználhassa a többmagos processzorokban rejlő teljesítményt. A GCD alkalmazásával a végrehajtási szálakat az operációs rendszer kezeli és nem az önálló alkalmazások. A GCD-s programok automatikusan el tudják osztani a munkát a rendelkezésre álló processzormagok közt, így a lehető legjobb teljesítményt tudják kihozni az adott rendszerből, legyen szó akár egy dual-core Mac Mini-ről, vagy éppen egy 8 magos Mac Pro-ról.
További részletek a Grand Central Dispatch-ről itt.
Az Apple úgy döntött, hogy Apache 2.0 licenc alatt közzéteszi a GCD mögött álló kódot. A részletek itt.
- A hozzászóláshoz be kell jelentkezni
- 3838 megtekintés
Hozzászólások
A bejelentéskor pont azon gondolkoztam, hogy a nyílt forrású szoftverek körében ennek talán akkor lenne a legnagyobb esélye az elterjedésre, ha a megoldás is multiplatformos lenne, azaz nem csak Mac OS-en működne.
Ezek szerint sikerült meggyőzni erről Istvánt. :)
Most jöhet akkor a "shut up and hack" rész...
suckIT szopás minden nap! István, a király - avagy az Apple rövid története képekben
- A hozzászóláshoz be kell jelentkezni
Nyílt forrásúvá tette az Apple a Snow Leopard.... júúújjjj.. majdnem bevettem
- A hozzászóláshoz be kell jelentkezni
Egyedül azt nem értem, hogy ezt miért nem szabványosítják ( nem pont ezt az implementációt, hanem ezt az elvet, hogy egy központi dolog vezérelje a többszálusítást ) alapjáraton a különböző rendszerek?? Sokkalta egyszerűbb lenne az alkalmazás fejlesztők szempontjából is, és fele annyi hiba se lenne szerintem.. vagy javítson ki valaki, ha tévedek..
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..
- A hozzászóláshoz be kell jelentkezni
Csak akkor mondjuk az Apple-nek meg kellene egyeznie a MS-sel és a Linuxosokkal is.
Hümm, hümm... Szerintem ezt nem szeretnék az almások.
- A hozzászóláshoz be kell jelentkezni
Pedig direkt próbáltam kiemelni, hogy "nem pont ezt az implementációt, hanem ezt az elvet" kéne átültetni ( tehát nem azt amit most az almások szabaddá tettek! ).. Biztos csak én nem tudok fogalmazni..
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..
- A hozzászóláshoz be kell jelentkezni
> Egyedül azt nem értem, hogy ezt miért nem szabványosítják
Ahogy látom, egy része 2008 szeptemberben már szóba került a megfelelő fórum előtt:
http://www.open-std.org/JTC1/SC22/wg14/www/docs/n1380.pdf (4.19 Apple’s extensions to C)
- A hozzászóláshoz be kell jelentkezni