Johan Louwers
Chief Enterprise Architect
2019
Oracle Labs
Research Mission & Project Portfolio
1 © 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Research Strategy
Oracle Labs maintains a balanced research portfolio with four major approaches:
2
1 Exploratory research
Bringing in the best and brightest in their fields to pursue their ideas within domains relevant to Oracle .
2 Directed research
Working in collaboration with product teams on difficult, future-looking problems outside the scope
of the product release lifecycle, but driven by product requirements.
3 Consulting
Providing unique expertise that is useful in smaller engagements across many product
organizations.
4 Product Incubation
Providing a place to grow new products resulting from Oracle Labs research. Incubation is necessary
when research results do not have a natural home (as is often the case with research across product
areas), or where more risk needs to be eliminated from the work to demonstrate its value.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Research Collaboration
3 © 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Research Locations
4
Vancouver -Canada
San Diego- California
Belmont -California
Austin -Texas
Burlington - Massachusetts
Brisbane -Australia
Linz -Austria
Zürich - Switzerland
© 2019 Oracle – PublicInformation – Johan Louwers
Public Research
5 © 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
6
Computer Architecture and Performance Modeling (CAP)
The CAP group does full-system performance modeling and analysis, using analytical techniques such as
queuing models and bounds analysis as well as simulation.The group has built and used detailed, cycle-
accurate models as well as high-level abstract models to understand the performance effects of
architectural design decisions.The group has worked with systems and applications in many areas of
interest to Oracle customers, including enterprise software, databases, and scientific computing / High-
Performance Computing (HPC) applications.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
7
Distributed Systems Group
Cloud Computing has emerged as the greatest paradigm shift in the computing industry in recent memory.
Distributed systems and infrastructures are at the heart of these modern Cloud Computing infrastructures;
be it foundational layers such as file systems and object stores, or Big Data analytics and Machine Learning
platforms. Recent technological trends toward high performance RDMA network fabrics and storage
technologies such as Intel/Micron's 3D XPoint are creating interesting new opportunities and challenges in
modern Cloud infrastructures, as well as traditional enterprise systems such as databases. At the same time,
processor vendors are packing more cores per CPU than ever before, enabling greater degree of scaling on a
single node.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
8
GraalVM
Current production virtual machines (VMs) provide high performance execution of programs only for a
specific language or a very small set of languages. Compilation, memory management, and tooling are
maintained separately for different languages, violating the don't repeat yourself (DRY) principle.This leads
not only to a larger burden for theVM implementers, but also for developers due to incoherent performance
characteristics, tooling, and configuration. Furthermore, communication between programs written in
different languages requires costly serialization and deserialization logic. Finally, high performanceVMs are
heavy-weight processes with high memory footprint and difficult embeddability.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
9
KeyBridge
The Keybridge project investigates the decomposition of application logic for execution on integrated
heterogeneous systems including systems on a NIC with the inclusion of a set of domain specific languages.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
10
Machine Learning Research Group
The mission of the Machine Learning Research Group is to scale Machine Learning (ML) across Oracle by
evangelizing ML throughout Oracle, collaborating with product groups to develop ML-based solutions to
improve their products and services, developing ML tools and systems to help them implement ML solutions
on their own, and doing fundamental ML research to better understand what will be needed by product
groups in the future.The Machine Learning Research group is composed of three teams that collaborate
closely with each other, with other Labs research groups, and with product groups and business units across
the entire company.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
11
Parallel Graph AnalytiX (PGX)
PGX is a toolkit for graph analysis - both running algorithms such as PageRank against graphs, and
performing SQL-like pattern-matching against graphs, using the results of algorithmic analysis. Algorithms
are parallelized for extreme performance.The PGX toolkit includes both a single-node in-memory engine,
and a distributed engine for extremely large graphs. Graphs can be loaded from a variety of sources
including flat files, SQL and NoSQL databases and Apache Spark and Hadoop; incremental updates are
supported.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
12
Program Analysis
The Program Analysis team focuses on static analysis techniques to find bugs and vulnerabilities in software
before the software is deployed.We build on top of the Parfait infrastructure and focus on web applications
built on the Java Enterprise Edition, PL/SQL and SQL languages.
Affogato
Node.js is a JavaScript runtime environment that is popular for creating web applications. A typical Node.js
application can be anything from a simple website to a large microservice-style application deployed to the cloud.
Gelato
Gelato is client-centric dynamic analysis of web applications. Web applications consist of client side and server side.
In modern applications, lots of server-side logic is moving to the client side, which is mostly written in JavaScript
using complex libraries.
Parfait-web
Parfait-web is a static code analysis tool from Oracle Labs that finds vulnerabilities in web applications written in
Java EE and PL/SQL. The focus is on vulnerabilities that matter, with most based on the OWASP Top 10 list.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
13
Programming Language Research Group
Programming language design, semantics, algorithms, and implementation with an emphasis on convenient
use of parallelism using multicores and GPUs.
Among our current projects are:
Machine learning algorithms suitable for fast implementation on GPUs (in collaboration with the Oracle
Labs IRML group).
Consulting with the Java product group on development of Java and the JVM, including compilation of
collection operations and stream expressions for parallel target machines and/or GPUs, as well as
explorations of value types and their interaction with generic types.
Fast parallel algorithms for pseudorandom number generators (this produced the SplittableRandom
class for Java JDK8).
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
14
Project RAPID
Project RAPID is a hardware-software co-design project targeting large-scale data management and
analysis. RAPID aims to improve the energy efficiency of database-processing systems by an order of
magnitude over today's solutions.To achieve these savings, RAPID leverages a heterogenous hardware
architecture combined with architecture-conscious software.
RAPID is a large project started in the Spring of 2011 and is looking for engineers with backgrounds in
databases, system software, and computer architecture. Please go to
https://www.oracle.com/corporate/careers/index.html if you are interested in this effort.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
15
Randomized Decomposition
Oracle customers are interested in mathematical optimization for portfolio optimization, vehicle routing,
discount optimization, shelf-space optimization, and many other business applications. In these
applications, the decision variables are often items (non-negative integers) with a limited number of choices
or prices with a limited selection of values.There can be many constraints that express item limits and
interactions, finite amount of store or warehouse storage and display space, discount limitations, time
horizons, and many other factors.The objective function, which is usually to maximize revenue or profit or
to minimize cost, can be highly non-linear due to complex interactions such as price elasticity. For example,
a grocery store might choose to discount a particular type of cereal, which should
RDSolver has been successfully applied to a wide range of problems, including revenue management
problems, graph problems (min/max cut, partitioning and clustering), the traveling salesman problem, and
assignment problems. It is currently shipping inOracle products for project portfolio optimization and
vehicle routing. It is also being integrated into additional Oracle products for discount optimization and
assortment optimization and is under evaluation for use in other areas.
© 2019 Oracle – PublicInformation – Johan Louwers
Oracle Labs – Current Public ResearchTopics
16
Walnut
Bringing Modern CompilerTechnology and Programming Languages to Data Processing Engines.The
Walnut project leverages GraalVM in data processing engines, focusing on the rapid embedding of new
programming languages (JavaScript, Python, Java, Ruby, R and others) and the use of runtime code
generation and speculative optimization in query processing.
© 2019 Oracle – PublicInformation – Johan Louwers
Thank You
17 © 2019 Oracle – Public Information – Johan Louwers

Oracle Labs - research mission & project potfolio

  • 1.
    Johan Louwers Chief EnterpriseArchitect 2019 Oracle Labs Research Mission & Project Portfolio 1 © 2019 Oracle – PublicInformation – Johan Louwers
  • 2.
    Oracle Labs –Research Strategy Oracle Labs maintains a balanced research portfolio with four major approaches: 2 1 Exploratory research Bringing in the best and brightest in their fields to pursue their ideas within domains relevant to Oracle . 2 Directed research Working in collaboration with product teams on difficult, future-looking problems outside the scope of the product release lifecycle, but driven by product requirements. 3 Consulting Providing unique expertise that is useful in smaller engagements across many product organizations. 4 Product Incubation Providing a place to grow new products resulting from Oracle Labs research. Incubation is necessary when research results do not have a natural home (as is often the case with research across product areas), or where more risk needs to be eliminated from the work to demonstrate its value. © 2019 Oracle – PublicInformation – Johan Louwers
  • 3.
    Oracle Labs –Research Collaboration 3 © 2019 Oracle – PublicInformation – Johan Louwers
  • 4.
    Oracle Labs –Research Locations 4 Vancouver -Canada San Diego- California Belmont -California Austin -Texas Burlington - Massachusetts Brisbane -Australia Linz -Austria Zürich - Switzerland © 2019 Oracle – PublicInformation – Johan Louwers
  • 5.
    Public Research 5 ©2019 Oracle – PublicInformation – Johan Louwers
  • 6.
    Oracle Labs –Current Public ResearchTopics 6 Computer Architecture and Performance Modeling (CAP) The CAP group does full-system performance modeling and analysis, using analytical techniques such as queuing models and bounds analysis as well as simulation.The group has built and used detailed, cycle- accurate models as well as high-level abstract models to understand the performance effects of architectural design decisions.The group has worked with systems and applications in many areas of interest to Oracle customers, including enterprise software, databases, and scientific computing / High- Performance Computing (HPC) applications. © 2019 Oracle – PublicInformation – Johan Louwers
  • 7.
    Oracle Labs –Current Public ResearchTopics 7 Distributed Systems Group Cloud Computing has emerged as the greatest paradigm shift in the computing industry in recent memory. Distributed systems and infrastructures are at the heart of these modern Cloud Computing infrastructures; be it foundational layers such as file systems and object stores, or Big Data analytics and Machine Learning platforms. Recent technological trends toward high performance RDMA network fabrics and storage technologies such as Intel/Micron's 3D XPoint are creating interesting new opportunities and challenges in modern Cloud infrastructures, as well as traditional enterprise systems such as databases. At the same time, processor vendors are packing more cores per CPU than ever before, enabling greater degree of scaling on a single node. © 2019 Oracle – PublicInformation – Johan Louwers
  • 8.
    Oracle Labs –Current Public ResearchTopics 8 GraalVM Current production virtual machines (VMs) provide high performance execution of programs only for a specific language or a very small set of languages. Compilation, memory management, and tooling are maintained separately for different languages, violating the don't repeat yourself (DRY) principle.This leads not only to a larger burden for theVM implementers, but also for developers due to incoherent performance characteristics, tooling, and configuration. Furthermore, communication between programs written in different languages requires costly serialization and deserialization logic. Finally, high performanceVMs are heavy-weight processes with high memory footprint and difficult embeddability. © 2019 Oracle – PublicInformation – Johan Louwers
  • 9.
    Oracle Labs –Current Public ResearchTopics 9 KeyBridge The Keybridge project investigates the decomposition of application logic for execution on integrated heterogeneous systems including systems on a NIC with the inclusion of a set of domain specific languages. © 2019 Oracle – PublicInformation – Johan Louwers
  • 10.
    Oracle Labs –Current Public ResearchTopics 10 Machine Learning Research Group The mission of the Machine Learning Research Group is to scale Machine Learning (ML) across Oracle by evangelizing ML throughout Oracle, collaborating with product groups to develop ML-based solutions to improve their products and services, developing ML tools and systems to help them implement ML solutions on their own, and doing fundamental ML research to better understand what will be needed by product groups in the future.The Machine Learning Research group is composed of three teams that collaborate closely with each other, with other Labs research groups, and with product groups and business units across the entire company. © 2019 Oracle – PublicInformation – Johan Louwers
  • 11.
    Oracle Labs –Current Public ResearchTopics 11 Parallel Graph AnalytiX (PGX) PGX is a toolkit for graph analysis - both running algorithms such as PageRank against graphs, and performing SQL-like pattern-matching against graphs, using the results of algorithmic analysis. Algorithms are parallelized for extreme performance.The PGX toolkit includes both a single-node in-memory engine, and a distributed engine for extremely large graphs. Graphs can be loaded from a variety of sources including flat files, SQL and NoSQL databases and Apache Spark and Hadoop; incremental updates are supported. © 2019 Oracle – PublicInformation – Johan Louwers
  • 12.
    Oracle Labs –Current Public ResearchTopics 12 Program Analysis The Program Analysis team focuses on static analysis techniques to find bugs and vulnerabilities in software before the software is deployed.We build on top of the Parfait infrastructure and focus on web applications built on the Java Enterprise Edition, PL/SQL and SQL languages. Affogato Node.js is a JavaScript runtime environment that is popular for creating web applications. A typical Node.js application can be anything from a simple website to a large microservice-style application deployed to the cloud. Gelato Gelato is client-centric dynamic analysis of web applications. Web applications consist of client side and server side. In modern applications, lots of server-side logic is moving to the client side, which is mostly written in JavaScript using complex libraries. Parfait-web Parfait-web is a static code analysis tool from Oracle Labs that finds vulnerabilities in web applications written in Java EE and PL/SQL. The focus is on vulnerabilities that matter, with most based on the OWASP Top 10 list. © 2019 Oracle – PublicInformation – Johan Louwers
  • 13.
    Oracle Labs –Current Public ResearchTopics 13 Programming Language Research Group Programming language design, semantics, algorithms, and implementation with an emphasis on convenient use of parallelism using multicores and GPUs. Among our current projects are: Machine learning algorithms suitable for fast implementation on GPUs (in collaboration with the Oracle Labs IRML group). Consulting with the Java product group on development of Java and the JVM, including compilation of collection operations and stream expressions for parallel target machines and/or GPUs, as well as explorations of value types and their interaction with generic types. Fast parallel algorithms for pseudorandom number generators (this produced the SplittableRandom class for Java JDK8). © 2019 Oracle – PublicInformation – Johan Louwers
  • 14.
    Oracle Labs –Current Public ResearchTopics 14 Project RAPID Project RAPID is a hardware-software co-design project targeting large-scale data management and analysis. RAPID aims to improve the energy efficiency of database-processing systems by an order of magnitude over today's solutions.To achieve these savings, RAPID leverages a heterogenous hardware architecture combined with architecture-conscious software. RAPID is a large project started in the Spring of 2011 and is looking for engineers with backgrounds in databases, system software, and computer architecture. Please go to https://www.oracle.com/corporate/careers/index.html if you are interested in this effort. © 2019 Oracle – PublicInformation – Johan Louwers
  • 15.
    Oracle Labs –Current Public ResearchTopics 15 Randomized Decomposition Oracle customers are interested in mathematical optimization for portfolio optimization, vehicle routing, discount optimization, shelf-space optimization, and many other business applications. In these applications, the decision variables are often items (non-negative integers) with a limited number of choices or prices with a limited selection of values.There can be many constraints that express item limits and interactions, finite amount of store or warehouse storage and display space, discount limitations, time horizons, and many other factors.The objective function, which is usually to maximize revenue or profit or to minimize cost, can be highly non-linear due to complex interactions such as price elasticity. For example, a grocery store might choose to discount a particular type of cereal, which should RDSolver has been successfully applied to a wide range of problems, including revenue management problems, graph problems (min/max cut, partitioning and clustering), the traveling salesman problem, and assignment problems. It is currently shipping inOracle products for project portfolio optimization and vehicle routing. It is also being integrated into additional Oracle products for discount optimization and assortment optimization and is under evaluation for use in other areas. © 2019 Oracle – PublicInformation – Johan Louwers
  • 16.
    Oracle Labs –Current Public ResearchTopics 16 Walnut Bringing Modern CompilerTechnology and Programming Languages to Data Processing Engines.The Walnut project leverages GraalVM in data processing engines, focusing on the rapid embedding of new programming languages (JavaScript, Python, Java, Ruby, R and others) and the use of runtime code generation and speculative optimization in query processing. © 2019 Oracle – PublicInformation – Johan Louwers
  • 17.
    Thank You 17 ©2019 Oracle – Public Information – Johan Louwers