Quiero saber si hay alguna función/método en LLVM para agregar construcciones Open-MP en LLVM IR. ¿Llvm-3.0 aún es compatible con las directivas OpenMP?LLVM OpenMP Support
5
A
Respuesta
2
OpenMP es una extensión de lenguaje de alto nivel. Por lo tanto, es el front-end de C/C++/FORTRAN el que debería reducir los pragmas en llamadas de tiempo de ejecución necesarias y alteraciones de código.
No veo cómo se puede "agregar" OpenMP a LLVM IR. Si necesita el compilador C/C++/FORTRAN que sea compatible con OpenMP pragmas y emita LLVM IR, intente con dragonegg.
Cuestiones relacionadas
- 1. comportamiento extraño OpenMP
- 2. ¿Tiene ormlite support inheritance?
- 3. Twisted http gzip support
- 4. ¿Spring Support JSON Configuration?
- 5. Python smtplib proxy support
- 6. oracle and i18n support
- 7. .SVG Browser Support
- 8. NSURLConnection/NSURLRequest gzip support
- 9. Python's mechanize proxy support
- 10. opencv facial sdk support
- 11. HTTP Patch XmlHttpRequest support
- 12. php inner class support
- 13. DocumentFragment browser support
- 14. LINQPad DB2 Support
- 15. HTML5 Doctype Support
- 16. openGL ES retina support
- 17. Ruby Support para SVG
- 18. Obfuscator & Tech Support
- 19. onbeforeunload support detection
- 20. .NET 4 Caching Support
- 21. github support precommithooks?
- 22. "$ .support no está definido"
- 23. ASP.Net WebAPI area support
- 24. Android - ¿Conjuntos Hindi Support?
- 25. @BeanProperty con PropertyChangeListener support?
- 26. speex support en android
- 27. IDEA intellij character support
- 28. Dart support operador sobrecarga
- 29. Google chrome html5 support
- 30. OpenMP num_hilos (1) se ejecuta más rápido que ningún OpenMP
En el hilo de ml reciente [(LLVMdev) Soporte de OpenMP para LLVM/jan2012] (http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-January/046823.html), utilizando los intrínsecos propuestos. "las personas interesadas en la paralelización automática son probablemente más interesadas en transformar un bucle LLVM-IR simple en LLVM-IR con extensiones OpenMP". – osgx
@osgx: si hablamos de la representación independiente de la biblioteca de llamadas a omp runtime, entonces sí, intrinsics especiales es una manera natural. El código Autopar también en teoría puede producir el código omp-aware. Por lo tanto, probablemente la pregunta original debe aclararse sobre cómo "LLVM aún puede soportar directivas OpenMP" :) –
Correcto. Básicamente, lo que ocurre con la disminución de openmp que ocurre es un conjunto de llamadas de biblioteca para varias directivas de openmp (así como algunos cambios de cfg), no hay nada específico que se necesite en el IR para openmp. Si desea poder observar las directivas OpenMP y reconstruir a un nivel superior el ciclo se transforma, es posible que desee soporte de IR, pero no estoy seguro de que sea necesario. – echristo