Laurent Daynes
Oracle Corporation
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Laurent Daynes.
high performance embedded architectures and compilers | 2013
Christian Wimmer; Michael Haupt; Michael L. Van De Vanter; Mick Jordan; Laurent Daynes; Douglas Simon
A highly productive platform accelerates the production of research results. The design of a Virtual Machine (VM) written in the Java#8482; programming language can be simplified through exploitation of interfaces, type and memory safety, automated memory management (garbage collection), exception handling, and reflection. Moreover, modern Java IDEs offer time-saving features such as refactoring, auto-completion, and code navigation. Finally, Java annotations enable compiler extensions for low-level “systems programming” while retaining IDE compatibility. These techniques collectively make complex system software more “approachable” than has been typical in the past. The Maxine VM, a metacircular Java VM implementation, has aggressively used these features since its inception. A co-designed companion tool, the Maxine Inspector, offers integrated debugging and visualization of all aspects of the VMs runtime state. The Inspectors implementation exploits advanced Java language features, embodies intimate knowledge of the VMs design, and even reuses a significant amount of VM code directly. These characteristics make Maxine a highly approachable VM research platform and a productive basis for research and teaching.
principles and practice of programming in java | 2011
Thomas Schatzl; Laurent Daynes
A Java virtual machine (JVM) typically manages large amounts of class metadata (e.g. class descriptors, methods, byte codes) in main-memory. In this paper, we analyze the impact of metadata memory management on garbage collection costs in an industrial-strength JVM. We show that, for most applications in the latest DaCapo benchmark suite, the tracing of class metadata accounts for a significant part of full collection time. We propose a novel approach to metadata memory management based on metaspaces and on a linkset graph. Metaspaces store class metadata segregated by their class loader and keep an exact record of references from class metadata to the heap. The linkset graph summarizes what metaspaces reference others via resolved symbolic links. Metaspaces allow en masse reclamation of the storage allocated to classes defined by a class loader when this class loader becomes unreachable. The linkset graph eliminates the need to trace references between metadata to determine the liveness of classes and of the heap objects they refer to. This reduces the number of visited references in class metadata to less than 1% of the original amount and cuts down tracing time by up to 80%. Average full heap collection time improves by at least 35% for all but one of the Dacapo benchmarks, and by more than 70% for six of them. Metaspace-based management of class metadata also extends well to multi-tasking implementations of the JVM. It enables tasks to unload classes independently of other tasks.
international world wide web conferences | 2018
Véronique Benzaken; Giuseppe Castagna; Laurent Daynes; Julien Lopez; Kim Nguyen; Romain Vernoux
We present BOLDR, a modular framework that enables the evaluation in databases of queries containing application logic and, in particular, user-defined functions. BOLDR also allows the nesting of queries for different databases of possibly different data models. The framework detects the boundaries of queries present in an application, translates them into an intermediate representation together with the relevant language environment, rewrites them in order to avoid query avalanches and to make the most out of database optimizations, and converts the results back to the application. Our experiments show that the techniques we implemented are applicable to real-world database applications, successfully handling a variety of language-integrated queries with good performances.
Archive | 2001
Gregorz J. Czajkowski; Laurent Daynes; Mario I. Wolczko
Archive | 2006
Krzysztof Palacz; Grzegorz J. Czajkowski; Laurent Daynes
Archive | 2007
Laurent Daynes; Bernd J. Mathiske; Gregory M. Wright; Mario I. Wolczko
Archive | 2006
Grzegorz J. Czajkowski; Laurent Daynes; Michal Wegiel
Archive | 2005
Grzegorz J. Czajkowski; Glenn C. Skinner; Laurent Daynes; Krzysztof Palacz
Archive | 2005
Grzegorz J. Czajkowski; Glenn C. Skinner; Laurent Daynes
Archive | 2006
Grzegorz J. Czajkowski; Laurent Daynes; Michal Wegiel