Large data arrays processing on Cell Broadband Engine IBM - CVUT Student Research Projects Large data arrays processing on Cell Broadband Engine Autor 1 (janurz1@fel.cvut.cz)
IBM - CVUT Student Research Projects Goal Using DMA for big data field Find good solution, how to make it Use some kind of DMA which is provide by Cell IBM - CVUT Student Research Projects 2
IBM - CVUT Student Research Projects Testing Big array of integer's Task divide between SPU Using 4 modified type DMA Success of task controled by PPU IBM - CVUT Student Research Projects 3
IBM - CVUT Student Research Projects Test conclusion Result is checked by PPU Success if result is same and no runtime error will apper IBM - CVUT Student Research Projects 4
IBM - CVUT Student Research Projects Type of DMA Mailbox Signal Notification Direct DMA Using MFC ( memory flow control ) IBM - CVUT Student Research Projects 5
IBM - CVUT Student Research Projects Mailbox Used for control communication between SPE, PPE and other devices Message is 32 bit long SPE have 2 mailbox for sending and 1 for receiving IBM - CVUT Student Research Projects 6
IBM - CVUT Student Research Projects Signal Notification Used for controled communication for PPE and other devices. They are broadcasting one to one or many to one IBM - CVUT Student Research Projects 7
IBM - CVUT Student Research Projects MFC Commands 2 type of commands Immediate command Queue command Each queue command has 5bit id – use for find out in which state command is IBM - CVUT Student Research Projects 8
IBM - CVUT Student Research Projects Direct DMA Use queue MFC command Quadword offset align – 128 byte For big structure use DMA list command Each such list can transfer 16KB Each list can have 2048 elements For control order we have MFC synchronization command or working with 5bit tags – control they states IBM - CVUT Student Research Projects 9
IBM - CVUT Student Research Projects Direct DMA SIMD – single instruction multiple data Unrolling – for eliminate branchces Overlaping – because of latency IBM - CVUT Student Research Projects 10