Show simple item record

dc.creatorVirtanen, Janne
dc.date.accessioned2014-09-30T11:59:35Z
dc.date.available2014-09-30T11:59:35Z
dc.identifier.urihttp://dspace.cc.tut.fi/dpub/handle/123456789/22486
dc.description.abstractThere are increasing number of multicore systems, and need for a standard and portable API for communication between cores. This Thesis focuses on Multicore Communication API (MCAPI). Compared to other APIs, MCAPI is simple and light weight. However, public open source MCAPI implementations are not satisfactory, like OpenMCAPI, FUNCAPI and a reference implementation offered by the Multicore Association, also known as shared memory implementation. This Thesis presents a new implementation, PMQ-MCAPI. The goal was to develop an implementation, which is stable, well performing, and easily portable. The implementation utilizes POSIX message queues, which makes it easily portable and standard-based. MCAPI works with or without an operating system. It supports both connection-oriented and connectionless communication, and features both blocking and non-blocking calls. On the other hand, MCAPI does not have more complex features, like multicast. The performance of PMQ-MCAPI was mainly measured as latency and transfer rate of communication. In a measurement setup there were one or two communicating nodes, which sent to themselves or to each other with transfer sizes of 1-8 KiB. The measurement platforms were a PC featuring a x86-64 processor and an FPGA development board featuring an ARM processor. When measuring with 2 KiB MCAPI packets, average latency and transfer rate between two cores was 8.77 µs and 1 692 MBps on the PC platform and 20.59 µs and 594 MBps on the ARM platform. On the PC platform, the reference implementation had 8x latency and 1/35x transfer rate at worst compared to PMQ-MCAPI. CPU and especially performance of its cache were concluded as the most important factors contributing to the performance of PMQ-MCAPI. PMQ-MCAPI is morestable and easily usable than other MCAPI implementations publicly available for PC.en
dc.format.extentv, 49
dc.format.mimetypeapplication/pdf
dc.language.isoenen
dc.rightsThis publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.en
dc.titleImplementation of Multicore Communication Libraryen
dc.title.alternativeMoniydinviestintäkirjaston kehittäminen
dc.typeDiplomityö - Master's thesis
dc.identifier.urnURN:NBN:fi:tty-201409301460
dc.contributor.laitosTietotekniikan laitos – Department of Pervasive Computingen
dc.contributor.tiedekuntaTieto- ja sähkötekniikan tiedekunta – Faculty of Computing and Electrical Engineeringen
dc.contributor.yliopistoTampereen teknillinen yliopisto - Tampere University of Technologyfi
dc.programmeAutomaatiotekniikan koulutusohjelmaen
dc.date.published2014-10-08
dc.contributor.laitoskooditie
dc.contributor.thesisadvisorHämäläinen, Timo D.
dc.contributor.degreesupervisorHämäläinen, Timo D.
dc.contributor.degreesupervisorSalminen, Erno


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record