Lock-free multi-thread solutions for multi-core and more - Parallel Scalable Solutions Main menu Parallel Scalable Solutions
TransparentArrow hider
Blank background bar
The digital road leads to massively multi-core computers needing non-blocking programming

 
PRODUKTER
-  LÖSNINGAR
NOBLE
   -  VARFÖR?
   -  INNEHÅLL
   -  SYSTEM
   -  PRESTANDA



 



Produkter – NOBLE – Prestanda
 
NOBLE Professional Edition är designad med användande av de allra senaste icke-blockerande teknikerna för att uppnå bästa möjliga prestanda och skalbarhet. Den faktiska prestandan i reella applikationer beror naturligtvis på den specifika körningsmiljön och applikationsdesign. Därför innehåller NOBLE Professional Edition flera olika versioner av varje datastruktur så att utvecklaren kan välja den bästa versionen för de specifika betingelserna.

Enkla icke-blockerande tekniker har använts i ett brett område i kommersiella applikationer sedan flera år. Dessa applikationer spänner från affärs och handelsapplikationer, musik och synthesizerapplikationer till även kärnor i operativsystem. Dock har inte mer avancerade datastrukturer som använder icke-blockerande teknologi varit tillgängliga för utvecklare förrän nu. Med hjälp av NOBLE Professional Edition kan utvecklare nu använda icke-blockerande versioner av en stor och rik mängd av datastrukturer baserade på algoritmiska lösningar inom frontlinjen.

Riktmärken

Här följer några exempel på stresstester på faktiska plattformar, m.a.o. användande av Pentium D-processorn från Intel innehållande två processorkärnor som uppträder som två logiska processorer, därmed stödjande riktig parallellism. Som kan ses nedan har de olika implementationerna av en viss komponent ganska distinkta prestandakarakteristikiska beroende på interna så väl som kontextuella egenskaper, därmed illustrerande nyttan av att lätt kunna stödja val av faktiskt implementation under run-time så som erbjuds av
NOBLE Professional Edition

Den övre grafen visar ett experiment med de olika versionerna av en Queue abstrakt datatyp som för närvarande ingår i NOBLE Professional Edition. Trådarna gör åtkomst till Queue'n med en medelstor belastning; mellan varje operation på Queue'n görs 400 aritmetiska flyttalsberäkningar.

Den övre grafen visar ett experiment där trådarna gör åtkomst till Queue'n med en maximal belastning; m.a.o. trådarna gör endast operationer på Queue'n.

Den övre grafen visar ett experiment med flera olika versioner av Priority Queue abstrakta datatypen, körandes med en medelstorlek på 1000 element. Trådarna gör åtkpmst till Priority Queue'n med en medelstor belastning; mellan varje operation på Priority Queue'n görs 400 aritmetiska flyttalsberäkningar.

Den övre grafen visar ett experiment där trådarna gör åtkomst till Priority Queue'n med en maximal belastning; m.a.o. trådarna gör endast operationer på Priority Queue'n.

För mera relevanta riktmärken som visar fördelarna i prestanda för icke-blockerande tekniker jämför med traditionella tekniker (t.ex. låsbaserad med användande av mutexar eller semaforer), se våra artiklar i sektioner för tekniska dokument. Vänligen notera att förutom ökad parallellism, så erbjuder icke-blockerande teknologi också andra mycket viktiga egenskaper såsom ökad stabilitet och exekveringsgarantier; t.ex. kan trådar stoppas till och med mitt under en operation på en datastruktur utan att påverka stabiliteten på de övriga trådarna.

Notera att skillnaderna i prestanda och skalbarhet mellan icke-blockerande synkronisering och traditionella tekniker blir ännu mer signifikanta med ökande antal processorer och parallellism.
 

Arrow left FÖREGÅENDE

 

Click here to view the english language version of the siteCreated by Kobolt.se, www.kobolt.se. ©2008 Parallel Scalable Solutions AB.
Till startsidan