Automated EJB client code generation using database query rewriting

Author(s):  
Jianguo Lu ◽  
J. Mylopoulos
Author(s):  
O'Neil Davion Delpratt ◽  
Michael Kay

This paper attempts to analyze the performance benefits that are achievable by adding a code generation phase to an XSLT or XQuery engine. This is not done in isolation, but in comparison with the benefits delivered by high-level query rewriting. The two techniques are complementary and independent, but can compete for resources in the development team, so it is useful to understand their relative importance. We use the Saxon XSLT/XQuery processor as a case study, where we can now translate the logic of queries into Java bytecode. We provide an experimental evaluation of the performance of Saxon with the addition of this feature compared to the existing Saxon product. Saxon's Enterprise Edition already delivers a performance benefit over the open source product using the join optimizer and other features. What can we learn from these to achieve further performance gains through direct byte code generation?


2021 ◽  
Vol 5 (OOPSLA) ◽  
pp. 1-30
Author(s):  
Haoran Xu ◽  
Fredrik Kjolstad

Fast compilation is important when compilation occurs at runtime, such as query compilers in modern database systems and WebAssembly virtual machines in modern browsers. We present copy-and-patch, an extremely fast compilation technique that also produces good quality code. It is capable of lowering both high-level languages and low-level bytecode programs to binary code, by stitching together code from a large library of binary implementation variants. We call these binary implementations stencils because they have holes where missing values must be inserted during code generation. We show how to construct a stencil library and describe the copy-and-patch algorithm that generates optimized binary code. We demonstrate two use cases of copy-and-patch: a compiler for a high-level C-like language intended for metaprogramming and a compiler for WebAssembly. Our high-level language compiler has negligible compilation cost: it produces code from an AST in less time than it takes to construct the AST. We have implemented an SQL database query compiler on top of this metaprogramming system and show that on TPC-H database benchmarks, copy-and-patch generates code two orders of magnitude faster than LLVM -O0 and three orders of magnitude faster than higher optimization levels. The generated code runs an order of magnitude faster than interpretation and 14% faster than LLVM -O0. Our WebAssembly compiler generates code 4.9X-6.5X faster than Liftoff, the WebAssembly baseline compiler in Google Chrome. The generated code also outperforms Liftoff's by 39%-63% on the Coremark and PolyBenchC WebAssembly benchmarks.


Author(s):  
Masashi TAWADA ◽  
Shinji KIMURA ◽  
Masao YANAGISAWA ◽  
Nozomu TOGAWA

2019 ◽  
Vol 7 (5) ◽  
pp. 824-828
Author(s):  
Anaswara Venunadh ◽  
Shruthi N ◽  
Mannar Mannan

2013 ◽  
Vol 8 (1) ◽  
pp. 24-29 ◽  
Author(s):  
Margaret Garnsey ◽  
Andrea Hotaling

ABSTRACT In this case, students assume the role of an accounting professional asked by a client to investigate why net income is not as strong as expected. The students must first analyze a set of financial statements to identify areas of possible concern. After determining the areas to investigate, the students use a database query tool to see if they can determine causes by examining transaction level data. Finally, the students are asked to professionally communicate their findings and recommendations to their client. The case provides students with experience in using query-based approaches to answering business questions. It is appropriate for students with basic query and financial analysis skills and knowledge of internal controls. A Microsoft Access database with transaction details for the final seven months of the current year as well as financial statements for the current and prior year are provided.


2016 ◽  
Author(s):  
Vanessa Avelino Xavier de Camargo ◽  
Marcos Wagner de Souza Ribeiro

2014 ◽  
Vol 1008-1009 ◽  
pp. 659-662
Author(s):  
Hai Ke Liu ◽  
Shun Wang ◽  
Xin Gna Kang ◽  
Jin Liang Wang

The article realization of NAND FLASH control glueless interface circuit based on FPGA,comparing the advantages and disadvantages of the NAND Flash and analysising the function of control interface circuit. The control interface circuit can correct carry out the SRAM timing-input block erase, page reads, page programming, state read instructions into the required operation sequence of NAND Flash, greatly simplifies the NAND FLASH read and write timing control. According to the ECC algorithm,the realization method of ECC check code generation,error search,error correction is described.The function of operate instructions of the NAND Flash control interface circuit designed in this paper is verified on Xillinx Spartan-3 board, and the frequency can reach 100MHz.


1982 ◽  
Vol 17 (6) ◽  
pp. 32-43 ◽  
Author(s):  
Susan L. Graham ◽  
Robert R. Henry ◽  
Robert A. Schulman
Keyword(s):  

Sign in / Sign up

Export Citation Format

Share Document