Effectively Mapping Linguistic Abstractions for Message-passing Concurrency to Threads on the Java Virtual Machine

dc.contributor.author Upadhyaya, Ganesha
dc.contributor.author Rajan, Hridesh
dc.contributor.author Rajan, Hridesh
dc.contributor.department Computer Science
dc.date 2018-02-16T20:25:49.000
dc.date.accessioned 2020-06-30T01:57:06Z
dc.date.available 2020-06-30T01:57:06Z
dc.date.issued 2015-07-01
dc.description.abstract <p>Efficient mapping of message passing concurrency (MPC) abstractions to Java Virtual Machine (JVM) threads is critical for performance, scalability, and CPU utilization; but tedious and time consuming to perform manually. In general, this mapping cannot be found in polynomial time, but we show that by exploiting the local characteristics of MPC abstractions and their communication patterns this mapping can be determined effectively. We describe our MPC abstraction to thread mapping technique, its realization in two frameworks (Panini and Akka), and its rigorous evaluation using several benchmarks from representative MPC frameworks. We also compare our technique against four default mapping techniques: thread-all, round-robin-task-all, random-task-all and work-stealing. Our evaluation shows that our mapping technique can improve the performance by 30%-60% over default mapping techniques. These improvements are due to a number of challenges addressed by our technique namely: i) balancing the computations across JVM threads, ii) reducing the communication overheads, iii) utilizing information about cache locality, and iv) mapping MPC abstractions to threads in a way that reduces the contention between JVM threads.</p>
dc.identifier archive/lib.dr.iastate.edu/cs_techreports/377/
dc.identifier.articleid 1376
dc.identifier.contextkey 7405705
dc.identifier.s3bucket isulib-bepress-aws-west
dc.identifier.submissionpath cs_techreports/377
dc.identifier.uri https://dr.lib.iastate.edu/handle/20.500.12876/20212
dc.source.bitstream archive/lib.dr.iastate.edu/cs_techreports/377/hridesh.pdf|||Fri Jan 14 23:51:03 UTC 2022
dc.subject.disciplines Programming Languages and Compilers
dc.subject.keywords Java
dc.subject.keywords Panini
dc.subject.keywords Akka
dc.subject.keywords Concurrency
dc.subject.keywords OOPSLA 2015
dc.title Effectively Mapping Linguistic Abstractions for Message-passing Concurrency to Threads on the Java Virtual Machine
dc.type article
dc.type.genre article
dspace.entity.type Publication
relation.isAuthorOfPublication 4e3f4631-9a99-4a4d-ab81-491621e94031
relation.isOrgUnitOfPublication f7be4eb9-d1d0-4081-859b-b15cee251456
Original bundle
Now showing 1 - 1 of 1
1.42 MB
Adobe Portable Document Format