A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2018; you can also visit the original URL.
The file type is application/pdf
.
Filters
Safety-critical Java for embedded systems
2016
Concurrency and Computation
Section 6 presents hardware support for SCJ within JOP. Section 7 describes two tools: the memory safety analysis tool and the worst-case memory consumption analysis tool. ...
Consequently, work on a simplification and rationalization of RTSJ started within the Java community process with a specification of Safety-Critical Java (SCJ). ...
ACKNOWLEDGEMENT This work is part of the project "Certifiable Java for Embedded Systems" (CJ4ES) and has received partial funding from the Danish Research Council for Technology and Production Sciences ...
doi:10.1002/cpe.3963
fatcat:tmeskmj55jbpbbphborjywn5vy
Certifiable Java for Embedded Systems
2014
Proceedings of the 12th International Workshop on Java Technologies for Real-time and Embedded Systems - JTRES '14
This paper summarizes key contributions within these areas during the three-year project period. In the conclusion the overall result of the project is assessed. ...
The Certifiable Java for Embedded Systems (CJ4ES) project aimed to develop a prototype development environment and platform for safety-critical software for embedded applications. ...
Source Access The two presented JVMs and the SCJ implementations on top of them are available in open source. ...
doi:10.1145/2661020.2661025
dblp:conf/jtres/SchoeberlDHKRRSS14
fatcat:mxmr4swd3nd7ljcjuagcitqeyi
Compiling a high-level language for GPUs
2012
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation - PLDI '12
However, with these languages, programmers must explicitly manage numerous lowlevel details involving communication and synchronization. ...
The global memory provides a shared address space for all threads on a device, with no implicit coherency guarantees across work groups. ...
OpenCL [9] and CUDA [15] have emerged as mainstream languages for programming GPUs and multicore systems. ...
doi:10.1145/2254064.2254066
dblp:conf/pldi/DubachCRBF12
fatcat:fxtiaepppvdtrltftukirwuabq
Compiling a high-level language for GPUs
2012
SIGPLAN notices
However, with these languages, programmers must explicitly manage numerous lowlevel details involving communication and synchronization. ...
The global memory provides a shared address space for all threads on a device, with no implicit coherency guarantees across work groups. ...
OpenCL [9] and CUDA [15] have emerged as mainstream languages for programming GPUs and multicore systems. ...
doi:10.1145/2345156.2254066
fatcat:mo6ty52fwnbpdg2bhwniuaz3da
Running parallel bytecode interpreters on heterogeneous hardware
2020
Conference Companion of the 4th International Conference on Art, Science, and Engineering of Programming
Since the early conception of managed runtime systems with tiered JIT compilation, several research attempts have been made to accelerate the bytecode execution. ...
Our preliminary evaluation shows that under specific workloads, hardware acceleration can yield up to 17x better performance compared to traditional optimized interpreters running on Intel CPUs and up ...
To efficiently run managed language bytecode interpreters on GPUs and FPGAs, this paper introduced the concept of parallel bytecode interpreters, in which the runtime has the notion of parallel indexing ...
doi:10.1145/3397537.3397563
dblp:conf/programming/FumeroSK20
fatcat:o3cu273o2rfhhf2iaivqqtpo2y
Safety-Critical Java on a Time-Predictable Processor
2015
Proceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems - JTRES '15
To the best of our knowledge the presented system is the second WCET analyzable real-time Java system; and the first one on top of a RISC processor. ...
processor; (2) a C compiler for Patmos with support for WCET analysis; (3) the HVM, which is a Java-to-C compiler; (4) the HVM-SCJ implementation which supports SCJ Level 0, 1, and 2 (for both single and multicore ...
SCJ augments the Java programming language with predictable scheduling of concurrently executing schedulables and time-predictable memory management. ...
doi:10.1145/2822304.2822309
dblp:conf/jtres/KorsholmSP15
fatcat:d7prxekovze7xcafooshkxdkpi
Towards co-designed optimizations in parallel frameworks: A MapReduce case study
[article]
2016
arXiv
pre-print
This paper presents a case study demonstrating how the specific semantic information of the MapReduce paradigm can be exploited on multicore architectures. ...
The introduced optimization not only improves the performance of the generated code, during the map phase, but also reduces the pressure on the garbage collector. ...
ACKNOWLEDGMENTS This research was conducted with support from the UK Engineering and Physical Sciences Research Council (EP-SRC), on grants AnyScale Apps EP/L000725/1, DOME EP/ J016330/1 and PAMELA EP/ ...
arXiv:1603.09679v1
fatcat:2zs7ryyz4nd6bammpsz5htbfzu
Hardware tansactional memory support for lightweight dynamic language evolution
2006
Companion to the 21st ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications - OOPSLA '06
Native extension modules' lack of thread safety is a significant barrier to dynamic languages' effective deployment on current and future multicore and multiprocessor systems. ...
We characterize several small Python applications executing on our infrastructure. ...
A multithreaded host application embedding a thread-unsafe dynamic language runtime may not scale well on current and future multicore and multiprocessor systems. ...
doi:10.1145/1176617.1176758
dblp:conf/oopsla/RileyZ06
fatcat:ghn7hmicevdh7plv7yosemiddi
Parallelizing calling context profiling in virtual machines on multicores
2009
Proceedings of the 7th International Conference on Principles and Practice of Programming in Java - PPPJ '09
In this paper, we introduce the ParCCT, a novel approach to parallelizing application code and CCT generation on multicores. ...
Our portable and extensible implementation targets standard Java Virtual Machines, thanks to instrumentation techniques that ensure complete bytecode coverage and efficiently support custom calling context ...
Program threads execute concurrently with CCT construction, enabling parallelization on multicores. ...
doi:10.1145/1596655.1596672
dblp:conf/pppj/BinderAVM09
fatcat:ugqispoz7zbyxo6hygdciaafd4
Rapid development of extensible profilers for the Java virtual machine with aspect-oriented programming
2010
Proceedings of the first joint WOSP/SIPEW international conference on Performance engineering - WOSP/SIPEW '10
Our profiler relies on inter-advice communication, an extension to common AOP languages that enables efficient data passing between advice woven into the same method. ...
Many profilers for Java applications are implemented with low-level bytecode instrumentation techniques, which is tedious, error-prone, and complicates maintenance and extension of the tools. ...
In order to speed up CCT construction on multicores, we refine the aspect so as to parallelize CCT construction and program execution. ...
doi:10.1145/1712605.1712616
dblp:conf/wosp/AnsaloniBVM10
fatcat:uumluwkcsvaoxccybduposlxvm
Time-predictable chip-multiprocessor design
2010
2010 Conference Record of the Forty Fourth Asilomar Conference on Signals, Systems and Computers
However, most real-time systems are multi-threaded applications and performance can be improved by using several processor cores on a single chip. ...
Real-time systems need time-predictable platforms to enable static worst-case execution time (WCET) analysis. ...
ACKNOWLEDGMENT The author would like to thank Christof Pitter for the implementation of the CMP version of JOP during his PhD thesis and Wolfgang Puffitsch for the active development on JOP, which includes ...
doi:10.1109/acssc.2010.5757923
fatcat:4fklqnckwbekxltbqn63hpn5n4
Firepile
2011
Proceedings of the 10th ACM international conference on Generative programming and component engineering - GPCE '11
For example, software running on the GPU cannot perform dynamic memory allocation, requiring the programmer to pre-allocate all memory the GPU might use. ...
To achieve good performance, GPU programmers must also be aware of how data is moved between host and GPU memory and between the different levels of the GPU memory hierarchy. ...
Firepile hides details of GPU programming within the library, allowing programmers to focus on the problem they wish to solve. The library performs facilities for managing devices and memory. ...
doi:10.1145/2047862.2047883
dblp:conf/gpce/NystromWD11
fatcat:nldbqgbcffcjdovkyamhhtu32q
Industry Use Cases For The Java Environment For Parallel Realtime Development
2011
Zenodo
Multicore systems have become standard on desktop computers today and current operating systems and software development tools provide means to actually use the additional computational power efficiently ...
A more fundamental change, however, is required to fully exploit the power of multicore systems. ...
, as good as explicit memory management in the code itself with a language such as C for example. ...
doi:10.5281/zenodo.11387
fatcat:qxqrdp5s6vferopwguuisia6h4
Boosting Java Performance Using GPGPUs
[chapter]
2017
Lecture Notes in Computer Science
These abstractions enable the Jacc runtime system to automatically choreograph data movement and synchronization between the host and the GPGPU; eliminating the need to explicitly manage disparate memory ...
Jacc utilizes two key abstractions: tasks which encapsulate all the information needed to execute code on a GPGPU; and task graphs which capture both inter-task control-flow and data dependencies. ...
Memory Management As a prerequisite to execution, data must be pre-loaded into the GPGPU memory by a memory manager (an instance is assigned to each device). ...
doi:10.1007/978-3-319-54999-6_5
fatcat:ns5erd4sfrdixiqpuek5ssusyu
Speculative Execution of Parallel Programs with Precise Exception Semantics on GPUs
[chapter]
2014
Lecture Notes in Computer Science
Current approaches to enabling GPGPU computing in Java and other managed languages involve low-level interfaces to native code that compromise the semantic guarantees of managed languages, and are not ...
In contrast, large numbers of programmers use highlevel languages, such as Java, due to their productivity advantages of type safety, managed runtimes and precise exception semantics. ...
Overview of HJ language The Habanero Java (HJ) parallel programming language under development at Rice University [3] provides an execution model for multicore processors that builds on four orthogonal ...
doi:10.1007/978-3-319-09967-5_20
fatcat:cayayngzmfbfhoghxzarhr6p4q
« Previous
Showing results 1 — 15 out of 345 results