Daniel Becker has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/14735


Change subject: POC: Remote codegen (Milestone 1)
......................................................................

POC: Remote codegen (Milestone 1)

The Impala executor does everything as usual until the point when it
would optimize and compile the LLVM module. Instead, it sends the LLVM
bitcode to the compile server which optimizes it and sends back an
object file (handled in memory, not written to disk). The executor
blocks until it receives the compiled object file.

Note that the customization of the LLVM module (replacing function
calls) is still done by the executor.

This stage should not be used in production as it actually slows down
the code generation because it is done remotely but synchronously.

The server is a python script that calls llc to compile the code.
It will later be replaced probably by a special impalad that uses the
LLVM API to compile the code.

Communication is not secure.

Change-Id: I375d969ceb31b3ee234d6ca56a77d508ae43bb0f
---
A be/src/codegen/LLVMSmallVectorMemoryBuffer.h
M be/src/codegen/llvm-codegen.cc
M be/src/codegen/llvm-codegen.h
A be/src/codegen/simple_message.h
M testdata/bin/kill-all.sh
M testdata/bin/run-all.sh
A testdata/bin/server.py
7 files changed, 499 insertions(+), 90 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/35/14735/4
--
To view, visit http://gerrit.cloudera.org:8080/14735
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I375d969ceb31b3ee234d6ca56a77d508ae43bb0f
Gerrit-Change-Number: 14735
Gerrit-PatchSet: 4
Gerrit-Owner: Daniel Becker <[email protected]>
Gerrit-Reviewer: Bikramjeet Vig <[email protected]>
Gerrit-Reviewer: Csaba Ringhofer <[email protected]>
Gerrit-Reviewer: Tim Armstrong <[email protected]>

Reply via email to