Comments (8)
Assigned to rod
Original comment by [email protected]
on 9 Oct 2009 at 1:53
from gpuocelot.
What exactly do you expect to do?
I mean I think you want to write a AMD IL backend for having AMD IL-> LLVM.
Would be possible to have AMD IL-> PTX or from PTX->AMD IL?
i.e. you have a way to do LLVM-> PTX or AMD IL->PTX?
Anyway seems that a LLVM->AMD IL is currently avaiable as part of AMD Stream
2.0 SDK..
./llc -regalloc=amdil -filetype=asm -march=amdil kernel.bc -o kernel.il
see http://forums.amd.com/devforum/messageview.cfm?catid=390&threadid=120683&
enterthread=y for details
Also similary as Nvidia OpenCL backend (which uses not yet published PTX spec)
AMD
OpenCL SDK is using a not yet published AMD IL spec (il_cs_2_0). If you want to
add
for testing and regression the kernels form OpenCL kernel codes use my wrapper
(as
currently it doesn't work on on AMD OpenCL the API for getting built device
binaries)..
The wrapper also gets device assembly code (similar in concept to cubin as PTX
is
similar to AMD IL in concept)..
see http://oscarbg.blogspot.com/2009/10/cal-wrapper-for-getting-amd-il-from.html
Original comment by [email protected]
on 23 Oct 2009 at 6:29
from gpuocelot.
Actually the idea is to go from PTX to AMD IL so that we can execute
pre-compiled
CUDA programs on AMD GPUs.
I was unaware that there was an LLVM to AMD IL backend available as part of the
Stream SDK. Thanks for the info. We might be able to take advantage of our PTX
to
LLVM translator, but I am doubtful because we loose a lot of information about
the
thread hierarchy in PTX when we go to LLVM.
Right now rod is working on this so I will leave it open to him to elaborate.
Original comment by [email protected]
on 24 Oct 2009 at 12:54
from gpuocelot.
Hi oscar,
I have a question regarding your calclwrapper library (from the link above)...
It's
not working for me. Let me know if you read this post. Thank you.
Original comment by [email protected]
on 11 Mar 2010 at 12:12
from gpuocelot.
Hi, I am new, can someone explain what exactly are you going to do in this
issue?
I am wondering how do you get LLVM to generate code to run on AMD GPU? The AMD
IL Bankend is not open source.
Original comment by [email protected]
on 18 Apr 2011 at 8:43
from gpuocelot.
The AMD GPU backend translates PTX directly into IL. This paper describes the
implementation details: http://doi.acm.org/10.1145/1964179.1964186. You can
find documentation about the AMD IL at
http://developer.amd.com/gpu/AMDAPPSDK/documentation.
Original comment by [email protected]
on 18 Apr 2011 at 1:17
from gpuocelot.
Original comment by [email protected]
on 23 Jun 2011 at 10:05
- Changed state: Started
from gpuocelot.
Just a FYI,
AMD open sourced its backend in December. This might help with what you are attempting to do.
http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-December/046136.html
Original comment by villmow
on 15 Mar 2012 at 5:37
from gpuocelot.
Related Issues (20)
- want a replacement of cuda driver api
- ocelot/translator/implementation/PTXToLLVMTranslator.cpp:2686: void translator::PTXToLLVMTranslator::_translateCvta(const ir::PTXInstruction&): Assertion `false' failed. HOT 1
- GOMP_CPU_AFFINITY stops multithreading HOT 1
- LLVM error when using glut: Assertion "Option already exists!" failed.
- With latest LLVM compilation fails on Translator.h:76
- Hydrazine revision 185 introduces compilation errors (hydrazine/interface/ArgumentParser.h line 242) HOT 1
- Register renaming
- Error when linking against CUDA6
- LLVM module hang
- Boost virtual inheritance Bug
- issue when installing gpuocelot (linker issue)
- Header guard spelling error in ExternalFunctionSet.cpp
- some trace-generators like ControlFlowVisualizer using getRangeBound function that is a member of EmulatedKernel class but the map datastructure that used by this function don't have member because no initialization or assignment occures for this datastructure how can i solve this problem
- build missing LIB
- Error while installing in Arch Linux
- Build fix for the newer bison environment
- Linker error on build
- Build Error: llvm/Assembly/Parser.h: No such file or directory
- Does not build on Mac OSX Maverick
- llvm installation error
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gpuocelot.