Publication | Closed Access
Reo: A Dataflow Inspired Language for Multicore
12
Citations
9
References
2013
Year
Unknown Venue
EngineeringDataflow Inspired LanguageCompiler TechnologyComputer ArchitectureProto-runtime ApproachFormal VerificationParallel ToolParallel SoftwareParallel ComputingData FlowParallelizing CompilerComputer EngineeringComputer ScienceRuntime SystemProgram AnalysisMany-core ArchitectureFormal MethodsParallel ProgrammingParallel Programming ModelData-level ParallelismReo Language
The Reo language has been well documented to address difficulties in parallel programming. It separates interaction protocol from computation code, which allows separate development, reuse, and formal proofs about the protocol correctness. Modules of computation can be composed by externally defining a protocol, without concern for their internal details. Achieving acceptable performance for code generated from Reo specifications has been a major challenge. In this paper, we address this with a combination of implementing the circuit splitting optimization and using the proto-runtime approach as a base platform for the runtime system of the Reo language. Our results show that the overhead when running Reo is so low that the performance of a k-tuple benchmark protocol compiled from its Reo specification is now up to six times faster than a straightforward hand-written thread implementation and nearly equal to a carefully optimized thread implementation of the same protocol.
| Year | Citations | |
|---|---|---|
Page 1
Page 1