[CORE][DRIVER] Now only using PTX6.4 if CUDA10.1+ is detected
This commit is contained in:
committed by
Philippe Tillet
parent
f08dd0ec58
commit
9cb3fd899a
@@ -247,7 +247,14 @@ std::string cu_module::compile_llvm_module(std::unique_ptr<llvm::Module> module,
|
||||
llvm::SmallVector<char, 0> buffer;
|
||||
module::compile_llvm_module(std::move(module), "nvptx64-nvidia-cuda", sm, "", buffer, "ptx63", Assembly);
|
||||
std::string result(buffer.begin(), buffer.end());
|
||||
find_and_replace(result, ".version", "\n", ".version 6.4\n");
|
||||
int version;
|
||||
dispatch::cuDriverGetVersion(&version);
|
||||
int major = version / 1000;
|
||||
int minor = (version - major*1000) / 10;
|
||||
if(major < 10)
|
||||
throw std::runtime_error("Triton requires CUDA 10+");
|
||||
if(minor >= 1)
|
||||
find_and_replace(result, ".version", "\n", ".version 6.4\n");
|
||||
while(find_and_replace(result, "\t// begin inline asm", "\n", ""));
|
||||
while(find_and_replace(result, "\t// end inline asm", "\n", ""));
|
||||
return result;
|
||||
|
Reference in New Issue
Block a user