Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Eric Jul

dblp:95/1442 · DBLP profile ↗
← Back
19ranked-venue papers
3as first author
3since 2021 · last 2024
0000-0003-0606-9511ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 7 · 1 first-authorSystems, architecture and hardware · 5 · 2 first-authorArtificial intelligence and machine learning · 3 · 3 since 2021Computer networks · 1Graphics, computer vision, multimedia, augmented reality and games · 1 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
7 papers
Cloud and datacenter computing · 60% Distributed systems · 25% Parallel and multicore computing · 8%
Software engineering, system software, and programming languages
6 papers
Programming languages and type systems · 75% Runtime systems and virtual machines · 20% Compilers and program optimization · 5%

Topics — the 11 heaviest of 16, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Cloud and datacenter computing › virtualization › virtual machine migration
live migration
0.112005
Live Migration of Virtual Machines · NSDI 2005
Cloud and datacenter computing
virtualization
0.112005
Live Migration of Virtual Machines · NSDI 2005
Distributed systems › distributed system architecture › distributed operating systems
process migration
0.011995
Object and Native Code Thread Mobility Among Heterogeneous Computers · SOSP 1995
Parallel and multicore computing › parallel programming runtimes › thread management
thread migration
0.011995
Object and Native Code Thread Mobility Among Heterogeneous Computers · SOSP 1995
Memory systems › shared memory
distributed shared memory
0.011994
Message-Driven Relaxed Consistency in a Software Distributed Shared Memory · OSDI 1994
Distributed systems › consistency models
relaxed consistency
0.011994
Message-Driven Relaxed Consistency in a Software Distributed Shared Memory · OSDI 1994
Distributed systems
distributed programming
0.021988
Fine-Grained Mobility in the Emerald System · ACM Trans. Comput. Syst. 1988
Distribution and Abstract Types in Emerald · IEEE Trans. Software Eng. 1987
Programming languages and type systems
abstract data types
0.021987
Distribution and Abstract Types in Emerald · IEEE Trans. Software Eng. 1987
Object Structure in the Emerald System · OOPSLA 1986
Programming languages and type systems
type systems
0.021987
Distribution and Abstract Types in Emerald · IEEE Trans. Software Eng. 1987
Object Structure in the Emerald System · OOPSLA 1986
Programming languages and type systems
object-oriented programming
0.011986
Object Structure in the Emerald System · OOPSLA 1986
Distributed systems
distributed object systems
0.011986
Object Structure in the Emerald System · OOPSLA 1986

Methods — techniques the papers use, named apart from their topics

machine-independent representation · 0.0bus stops · 0.0object migration · 0.0remote procedure call · 0.0compiler-defined implementations · 0.0call-by-object-reference · 0.0
YearPublicationVenuePosition
2024 SAM in the Pipeline: Transforming Axis-Aligned to Oriented Bounding Boxes for Superior Sperm Detection
abstract
Sperm analysis, in terms of finding the best cells, has traditionally been performed manually and is slow, expensive, prone to human error, and often inconsistent across different laboratory technicians. Our research focuses on the use of artificial intelligence to improve computer-assisted sperm analysis, a critical aspect in the diagnosis and treatment of male fertility issues. Using the best publicly available dataset for sperm detection, we employ novel data refining techniques and state-of-the-art object detection models to develop the best-performing sperm detection model to our knowledge. We show how the Segment Anything Model (SAM) can be used as a data-refining tool to improve object detection datasets. Additionally, we use SAM to convert Axis-Aligned Bounding Box (AABB) to Oriented Bounding Box (OBB) to get more descriptive coordinates. We test our data-refining pipeline with state-of-the-art object detection models and a publicly available sperm-tracking dataset. Our results show that the refined data coming from our pipeline can be used to train lighter models while still achieving higher accuracy compared to using the original dataset. This also enables possibilities for running high-quality tracking on light hardware, such as consumer-grade laptops.
Pål Andreas Hoven Bentsen, Steven Alexander Hicks, Eric Jul, Pål Halvorsen, Vajira Thambawita
CBMI3
2022 A survey on local transport mode detection on the edge of the network
abstract
Abstract We present a survey of smartphone-based Transport Mode Detection (TMD). We categorize TMD solutions into local and remote; the first ones are addressed in this article. A local approach performs the following steps in the smartphone (and not in some faraway cloud servers): 1) data collection or sensing, 2) preprocessing, 3) feature extraction, and 4) classification (with a previous training phase). A local TMD approach outperforms a remote approach due to less delay, improved privacy, no need for Internet connection, better or equal accuracy and smaller data size. Therefore, we present local TMD solutions taking into account the above mentioned four steps and analyze them according to the most relevant requirements: accuracy, delay, resources consumption and generalization. To achieve the highest accuracy (100%), studies used a different combination of sensors, features and Machine Learning (ML) algorithms. The results suggest that accelerometer and GPS (Global Position System) are the most useful sensors for data collection. Discriminative ML algorithms, such as random forest, outperform the other algorithms for classification. Some solutions improved the delay of the proposed system by using a small window size and a local approach. A few studies could improve battery usage of their system by utilizing low battery-consuming sensors (e.g., accelerometer) and low sampling rate (e.g., 10Hz). CPU usage is primarily dependent on data collection, while memory usage is related to the features and complexity of the ML algorithm. Finally, the generalization requirement is met in studies that consider user, location and position independency into account.
Mahdieh Kamalian, Paulo Ferreira 0001, Eric Jul
Appl. Intell.3
2022 CapillaryNet: An automated system to quantify skin capillary density and red blood cell velocity from handheld vital microscopy
abstract
Capillaries are the smallest vessels in the body which are responsible for delivering oxygen and nutrients to surrounding cells. Various life-threatening diseases are known to alter the density of healthy capillaries and the flow velocity of erythrocytes within the capillaries. In previous studies, capillary density and flow velocity were manually assessed by trained specialists. However, manual analysis of a standard 20-s microvascular video requires 20 min on average and necessitates extensive training. Thus, manual analysis has been reported to hinder the application of microvascular microscopy in a clinical environment. To address this problem, this paper presents a fully automated state-of-the-art system to quantify skin nutritive capillary density and red blood cell velocity captured by handheld-based microscopy videos. The proposed method combines the speed of traditional computer vision algorithms with the accuracy of convolutional neural networks to enable clinical capillary analysis. The results show that the proposed system fully automates capillary detection with an accuracy exceeding that of trained analysts and measures several novel microvascular parameters that had eluded quantification thus far, namely, capillary hematocrit and intracapillary flow velocity heterogeneity. The proposed end-to-end system, named CapillaryNet, can detect capillaries at ~0.9 s per frame with ~93% accuracy. The system is currently used as a clinical research product in a larger e-health application to analyse capillary data captured from patients suffering from COVID-19, pancreatitis, and acute heart diseases. CapillaryNet narrows the gap between the analysis of microcirculation images in a clinical environment and state-of-the-art systems.
Maged Helmy, Tuyen Trung Truong, Anastasiya Dykky, Paulo Ferreira 0001, Eric Jul
Artif. Intell. Medicine5
2014 Data Centre Optimisation Enhanced by Software Defined Networking
abstract
Contemporary Cloud Computing infrastructures are being challenged by an increasing demand for evolved cloud services characterised by heterogeneous performance requirements including real-time, data-intensive and highly dynamic workloads. The classical way to deal with dynamicity is to scale computing and network resources horizontally. However, these techniques must be coupled effectively with advanced routing and switching in a multi-path environment, mixed with a high degree of flexibility to support dynamic adaptation and live-migration of virtual machines (VMs). We propose a management strategy to jointly optimise computing and networking resources in cloud infrastructures, where Software Defined Networking (SDN) plays a key enabling role.
Tommaso Cucinotta, Diego Lugones, Davide Cherubini, Eric Jul
IEEE CLOUD4
2014 Confidential Execution of Cloud Services
abstract
In this paper, we present Confidential Domain of Execution (CDE), a mechanism for achieving confidential execution of software in an otherwise untrusted environment, e.g., at a Cloud Service Provider. This is achieved by using an isolated execution environment in which any communication with the outside untrusted world is forcibly encrypted by trusted hardware. The mechanism can be useful to overcome the challenging issues in guaranteeing confidential execution in virtualized infrastructures, including cloud computing and virtualized network functions, among other scenarios. Moreover, the proposed mechanism does not suffer from the performance drawbacks typical of other solutions proposed for secure computing, as highlighted by the presented novel validation results. Copyright © 2014 SCITEPRESS - Science and Technology Publications.
Tommaso Cucinotta, Davide Cherubini, Eric Jul
CLOSER3
2013 Cooperative code-sharing for UMTS femtocells
abstract
Femtocells are low-cost, user deployed base-stations that can alleviate indoor coverage problems. However as femtocell deployment density increases, inter-femtocell interference can severely limit their effectiveness. In this paper, we present a protocol for coordinated auto-configuration of femtocells in a UMTS environment. We use an iterated heuristic search (GRASP) to assign orthogonal CDMA spreading codes in the downlink to avoid interference between overlapping signals. The protocol is compared against a baseline of current practice on a range of simulated problems and shown to consistently provide greatly improved performance for data users, providing up to 480% of the average data rate the baseline provides on certain problems.
David Stynes, Kenneth N. Brown, Eric Jul
CCNC3
2010 Lithium: virtual machine storage for the cloud
abstract
To address the limitations of centralized shared storage for cloud computing, we are building Lithium, a distributed storage system designed specifically for virtualization workloads running in large-scale data centers and clouds. Lithium aims to be scalable, highly available, and compatible with commodity hardware and existing application software. The design of Lithium borrows ideas and techniques originating from research into Byzantine Fault Tolerance systems and popularized by distributed version control software, and demonstrates their practical applicability to the performance-sensitive problem of VM hosting. To our initial surprise, we have found that seemingly expensive techniques such as versioned storage and incremental hashing can lead to a system that is not only more robust to data corruption and host failures, but also often faster than naïve approaches and, for a relatively small cluster of just eight hosts, performs well compared with an enterprise-class Fibre Channel disk array.
Jacob Gorm Hansen, Eric Jul
SoCC2
2005 Live Migration of Virtual Machines
Keir Fraser, Steven Hand 0001, Jacob Gorm Hansen, Eric Jul, Christian Limpach, Ian Pratt 0001, Andy Warfield
NSDI5
2004 Partitioning of Java Applications to Support Dynamic Updates
abstract
The requirement for 24/7 availability of distributed applications complicates their maintenance and evolution as shutting down such applications to perform updates may not be an acceptable solution. Therefore, there is a need to be able to update these applications dynamically, i.e. without shutting them down. Current solutions for building dynamically updatable Java applications require that applications either are prepared for updates from the outset, comply with a specific framework, or are executed in a modified virtual machine. In this work, we present a novel approach to creating dynamically updatable Java applications based on the concept of partitioning applications into units of dynamic updates and illustrate how this approach better addresses the problems of adding update support to existing applications than traditional approaches.
Robert Pawel Bialek, Eric Jul, Jean-Guy Schneider
APSEC2
2004 Topic 9: Distributed Systems and Algorithms
Henri E. Bal, Andrzej M. Goscinski, Eric Jul, Giuseppe Prencipe
Euro-Par3
2001 Prioritizing Network Event Handling in Clusters of Workstations
Jørgen S. Hansen, Eric Jul
Euro-Par2
1995 Object and Native Code Thread Mobility Among Heterogeneous Computers
abstract
We present a technique for moving objects and threads among heterogeneous computers at the native code level.To enable mobility of threads running native code, we convert thread states among machine-dependent and machine-independent formats.We introduce the concept of bLts stops, which are machine-independent representations of program points as represented by program counter values, The concept of bus stops can be used also for other purposes, <~.g., to aid inspecting and debugging optimized code, garbage collection e~c.We also discuss techniques for thread mobility among processors executing differently optimized codes.We demonsti-ate the viabi lily of our ideas by providing a prototype implementation ot' object and thread mobility among hetero-gWCOUS computers,The prototype uses the Emerald distributed progt-amming language without modification; we have merely extended the Emerald runtime system and the code generator of the Emerald compiler.Our extensions allow object and thread mobility among VAX, Sun-3, HP9000/300, and Sun SPARC workstations.The excellent intra-node performance of the original homogeneous Emerald is retained: migrated threads run at native code speed bet'ore and after migration; the same speed as on homogeneous Emeralci and close to C code performance.Our implementation of mobility hm not been optimized:thread mobility and trans-architecture invocations take about 60% longer than in lhe homogeneous implementation.We believe this is the first implementation of full object and [hrcad mobility among heterogeneous computers with threads execu(ing native code. 1
Bjarne Steensgaard, Eric Jul
SOSP2
1994 Message-Driven Relaxed Consistency in a Software Distributed Shared Memory
Povl T. Koch, Robert J. Fowler, Eric Jul
OSDI3
1991 Emerald: A General-Purpose Programming Language
abstract
Abstract Emerald is a general‐purpose language with aspects of traditional object‐oriented languages, such as Smalltalk, and abstract data type languages, such as Modula‐2 and Ada. It is strongly typed with a non‐traditional object model and type system that emphasize abstract types, allow separation of typing and implementation, and provide the flexibility of polymorphism and subtyping with compile‐time checking. This paper describes the Emerald language and its programming methodology. We give examples that demonstrate Emerald's features, and compare and contrast the Emerald approach to programming with the approaches used in other similar languages.
Rajendra K. Raj, Ewan D. Tempero, Henry M. Levy, Andrew P. Black, Norman C. Hutchinson, Eric Jul
Softw. Pract. Exp.6
1988 Fine-Grained Mobility in the Emerald System
abstract
Emerald is an object-based language and system designed for the construction of distributed programs. An explicit goal of Emerald is support for object mobility; objects in Emerald can freely move within the system to take advantage of distribution and dynamically changing environments. We say that Emerald has fine-grained mobility because Emerald objects can be small data objects as well as process objects. Fine-grained mobility allows us to apply mobility in new ways but presents implementation problems as well. This paper discusses the benefits of tine-grained mobility, the Emerald language and run-time mechanisms that support mobility, and techniques for implementing mobility that do not degrade the performance of local operations. Performance measurements of the current implementation are included.
Eric Jul, Henry M. Levy, Norman C. Hutchinson, Andrew P. Black
ACM Trans. Comput. Syst.1
1987 Fine-Grained Mobility in the Emerald System (Extended Abstract)
abstract
The Emerald compiler analyzes object definitions and attempts to produce efficient implementations commensurate with the way in which objects are used. For example, an object that moves around the network will require a very general remote procedure call implementation; however, an object that is completely internal to that mobile object can be implemented using direct memory addressing and inline code or procedure calls.We wanted to achieve performance competitive with standard procedural languages in the local case and standard remote procedure call systems in the remote case. These goals are not trivial in a location-independent object-based environment. To meet them, we relied heavily on an appropriate choice of language semantics, a tight coupling between the compiler and run-time kernel, and careful attention to implementation.As an example of Emerald's local performance, Table 1 shows execution times for several local Emerald operations executed on a Micro VAX II1. The “resident global invocation” time is for a global object (i.e., one that can move around the network) when invoked by another object resident on the same node. By comparison, other object-based distributed systems are typically over 100 times slower for local invocations of their most general objects [6, 1].The Emerald language uses call-by-object-reference parameter passing semantics for all invocations, local or remote. While call-by-object-reference is the natural semantics for object-based systems, it presents a potential performance problem in a distributed environment. When a remotely invoked object attempts to access its arguments, those accesses will typically require remote invocations. Because Emerald objects are mobile, it may be possible to avoid some of these remote references by moving argument objects to the site of a remote invocation.From this table we can compute the benefit of call-by-move for a simple argument object. For this simple argument object, the additional cost of call-by-move was 2 milliseconds while call-by-visit cost 6.4 milliseconds. These are computed by subtracting the time for a remote invocation with an argument reference that is local to the destination. The call-by-visit time includes sending the invocation message and the argument object, performing the remote invocation (which then invokes its argument), and returning the argument object with the reply. Had the argument been a reference to a remote object (i.e., had the object not been moved), the incremental cost would have been 30.8 milliseconds. These measurements are somewhat of a lower bound because the cost of moving an object depends on the complexity of the object and the types of objects it names.Emerald currently executes on a small network of MicroVAX IIs and has recently been ported to the SUN 32. We have concentrated on implementing fine-grained mobility in Emerald while minimizing its impact on local performance. This has presented significant problems; however, through the use of language support and a tightly-coupled compiler and kernel, we believe that our design has been successful in meeting both its conceptual and performance goals.
Eric Jul, Henry M. Levy, Norman C. Hutchinson, Andrew P. Black
SOSP1
1987 Distribution and Abstract Types in Emerald
abstract
Emerald is an object-based language for programming distributed subsystems and applications. Its novel features include 1) a single object model that is used both for programming in the small and in the large, 2) support for abstract types, and 3) an explicit notion of object location and mobility. This paper outlines the goals of Em-erald, relates Emerald to previous work, and describes its type system and distribution support. We are currently constructing a prototype implementation of Emerald.
Andrew P. Black, Norman C. Hutchinson, Eric Jul, Henry M. Levy, Larry Carter
IEEE Trans. Software Eng.3
1986 Object Structure in the Emerald System
abstract
Emerald is an object-based language for the construction of distributed applications. The principal features of Emerald include a uniform object model appropriate for programming both private local objects and shared remote objects, and a type system that permits multiple user-defined and compiler-defined implementations. Emerald objects are fully mobile and can move from node to node within the network, even during an invocation. This paper discusses the structure, programming, and implementation of Emerald objects, and Emerald's use of abstract types.
Andrew P. Black, Norman C. Hutchinson, Eric Jul, Henry M. Levy
OOPSLA3
1980 Microcomputer comparison: Concurrent pascal on intel 8080
Eric Jul
Euromicro Newsletter1