Tôi muốn biết liệu có bất kỳ hàm/phương pháp nào trong LLVM để thêm các cấu trúc Open-MP trong LLVM IR hay không. Liệu llvm-3.0 vẫn hỗ trợ các chỉ thị OpenMP?LLVM Hỗ trợ OpenMP
5
A
Trả lời
2
OpenMP là tiện ích mở rộng ngôn ngữ cấp cao. Vì vậy, nó là C/C++/FORTRAN front-end mà nên hạ pragma thành các cuộc gọi thời gian chạy cần thiết và thay đổi mã.
Tôi không thấy cách OpenMP có thể được "thêm" vào LLVM IR. Nếu bạn cần trình biên dịch C/C++/FORTRAN hỗ trợ các pragma OpenMP và phát ra LLVM IR - hãy thử dragonegg.
Các vấn đề liên quan
- 1. ActionBar (Hỗ trợ) với Fragment (hỗ trợ)
- 2. Liên kết LLVM OCaml có bao gồm hỗ trợ nội tại không?
- 3. Liên kết với mã mà không hỗ trợ xử lý ngoại lệ (C++/LLVM)
- 4. Cocos2d có hỗ trợ ARC không?
- 5. OpenMP trên iOS/Android
- 6. Hỗ trợ Mã VS2010 có hỗ trợ nUnit không?
- 7. Aptana AngularJS hỗ trợ
- 8. LINQPad DB2 Hỗ trợ
- 9. Hỗ trợ JBoss Websockets?
- 10. Hỗ trợ Doctype HTML5
- 11. will_paginate hỗ trợ JSON?
- 12. Glimpse WebAPI Hỗ trợ
- 13. LLVM cho GHC
- 14. Cách đăng ký chương trình phụ trợ LLVM mới?
- 15. C# HPC - MPI và OpenMP
- 16. Hỗ trợ SQLite là gì?
- 17. Hỗ trợ trình duyệt E4X
- 18. PHP với hỗ trợ sqlite3
- 19. localtime_r hỗ trợ trên MinGW
- 20. Hỗ trợ hệ thống PPC32
- 21. Xuggler hỗ trợ codec nào?
- 22. Hỗ trợ Cobertura & Java 7
- 23. hỗ trợ speex trong android
- 24. Hỗ trợ trình duyệt Ember.js?
- 25. Hỗ trợ định lượng Z3
- 26. IE không hỗ trợ 'insertBefore'
- 27. Hỗ trợ SVG trên Android
- 28. Hỗ trợ Rijndael trong Java
- 29. Does Hostmonster hỗ trợ Django
- 30. Android có hỗ trợ log2
Trong chủ đề ml [LLVMdev] hỗ trợ OpenMP mới cho LLVM/jan2012] (http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-January/046823.html), sử dụng nội tại được đề xuất. "những người quan tâm đến việc song song tự động là có thể quan tâm nhiều hơn đến việc chuyển đổi một vòng LLVM-IR đơn giản thành LLVM-IR với các phần mở rộng OpenMP." – osgx
@osgx: nếu chúng ta đang nói về thư viện biểu diễn độc lập của cuộc gọi đến thời gian chạy omp, thì có, nội tại đặc biệt là một cách tự nhiên. Mã Autopar cũng trong lý thuyết có thể tạo ra mã omp-aware. Vì vậy, hầu hết các câu hỏi ban đầu có thể cần được làm rõ làm thế nào "LLVM vẫn có thể hỗ trợ các chỉ thị OpenMP" :) –
Right. Về cơ bản những gì các openmp hạ mà xảy ra là một tập hợp các cuộc gọi thư viện cho các chỉ thị khác nhau openmp (cũng như một số thay đổi cfg), không có gì cụ thể đó là cần thiết trong IR cho openmp. Nếu bạn muốn có thể nhận thấy các chỉ thị OpenMP và xây dựng lại ở mức cao hơn, vòng lặp biến đổi sau đó bạn có thể muốn hỗ trợ IR, nhưng tôi không tích cực là cần thiết. – echristo