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]>
