Digital Knight
The Cell is beide een MIMD(over de SPE´s en PPE) en een SIMD(in de SPE units en in de PPE VMX unit) chip.
Het is eigenlijk een misperceptie te denken over een SPE als een SIMD(vector)-only processor. Dat is ie NIET.
Omdat de register file verenigd is betekend het niet gelijk dat het alleen maar een SIMD is. (Een x86 met SSE of een 970 met een VMX is perfect om te gebruiken voor acalar code en dus ook de SPE).
SPE's zijn krachtiger als PPE's.
Het is normaal dat de vector processor extensies van simpele cores krachtiger zijn dan de core zelf. Waarom?
Omdat de core de extra ruimte nodig heeft om de OS operations en branch predictions te kunnen draaien. Waarbij de SPE bijna alleen een soort ‘number cruncher’ is en een gelimiteerd general purpose en branch hint/prediction heeft. Daarom zijn de SPE cores kleiner en vele malen krachtiger.
En dan over A.I:
De Xenon en The Cell zijn beiden In-Order Processoren met een gelimiteerde branch prediction. (via software branch hits)
Beide systemen moeten unieke methodes toepassen om die ongelovelijke A.I te krijgen wat mensen in deze generatie verwachten.
Maar je hoeft je nergens zorgen voor te maken.
Er zijn veel meer efficientere en technischere ’ bottom-up A.I’ systemen uit tegenwoordig dan de standaard ‘top down’ cache-nodige A.I systemen van ´vroeger´.
De PlayStation 2 had ook een In-Order Processor met helemaal GEEN branch prediction, maar de A.I deed het nog goed voor het systeem.
Met de Memory efficiëntie, hoge bandwith en de ongelovelijk processor kracht van The Cell zal de A.I ongelovelijk verbeterd worden.
De game WarHawk gebruikt al Ambient A.I dat in de uiteindelijk game, honderden/duizenden individuelen moet voorzien van A.I. Of Heavenly Swords’ individualizeerde A.I of MoH: Airbornes unieke ‘numbering A.I.’ systeem.
Met welke vector unit je ook werkt, moet je gewoon zo MIN mogelijk conditional branches gebruiken. (alleen voor het LOOPEN/looping) En zoveel mogelijk alternatieve, brancheLESS, algoritmes gebruiken.
Hieronder een paar posts over A.I op The Cell van IBM Developers/Programmeurs van de IBM Cell Fora.
"The current "thinking" is that most AI-type code would run on the PPE unit. It is of course possible to run AI on the SPEs, but doing so will require some tuning to avoid performance penalties for branch-heavy code."
" "AI" is a very broad term that encompasses many different types of computation. Some will be ideal applications for the SPEs, others will have to be performed on the PPE."
"In terms of AI, Cell may be quite promising for "bottom up" AI, such as artificial neural nets; as for "top down" AI like Lisp's frame based reasoning, we may need more than Cell processors to realize the promises of Minsky et al for this dead-end pseudo-technology."
En iets over een nieuwe soort van A.I algoritme genaamd: INFLUENCE MAPPING
"An influence map is a spatial representation of an AI agent's knowledge about the world. It allows a computer player to develop a tactical perspective of the current
game state layered on top of the underlying physical/geographical representation of the game environment. An influence map indicates where a computer player's forces are deployed, where the enemy is located or is most likely to be found, where the "frontier" between players lies, what areas remain to be explored, where significant battles have occurred, and where its enemies are most likely to attack it in the future."
Door de manier waarop dit wordt geprogrammeerd zal deze algoritme IDEAAL zijn voor de SPE's van The Cell.
Link naar de IBM fora:
http://www-128.ibm.com/developerworks/forums/dw_forum.jsp?forum=739&cat=46
Al met al kan de A.I zo complex worden als je het maar wilt op The Cell.