Ich stehe vor einer technischen Herausforderung und dachte, Ihr könntet möglicherweise mir helfen oder jemanden kennt, der das kann. Kurz gesagt, ich arbeite an einem Projekt, das in C++ mit der Eigen-Bibliothek geschrieben wurde. Ich bin daran interessiert, den Code (Matrix-Vektor Multiplikation) mithilfe von BLAS und CUDA auf einer NVIDIA GPU zu beschleunigen. Mein System läuft auf der Intel/oneAPI-Plattform (Basekit 2023.0.0-devel) unter Ubuntu 20.04. Wäre es möglich, dass du Erfahrungen mit der Integration und Optimierung von C++-Anwendungen in Zusammenhang mit BLAS und CUDA hast? Insbesondere interessiere ich mich für Kenntnisse in: CPU und GPU Schnittstellen - 1 Methode SYCL/DPC++ - 2 Methide Eigen und CUDA - 3 Methode Wrapper/Middleware-Techniken, insbesondere Drop-In und Linker Wenn Ihr nicht die Zeit oder das spezifische Know-how für dieses Projekt hast, kennst du vielleicht jemanden, der es hat? Jede Hilfe oder Empfehlung wird sehr geschätzt.
ich glaube, das die 2 und die 3 Methode gleich sind.
Falsches Forum und schlechter Übersetzer.
:
Bearbeitet durch User
Auf github veröffentlichen und gucken wen man dafür begeistern kann.
IUser_SANmi K. schrieb: > Ich stehe vor einer technischen Herausforderung und dachte, Ihr könntet > möglicherweise mir helfen oder jemanden kennt, der das kann. Naja, Stackoverflow, ChatGPT + ein eine Prise Selbstengagement, z.B. https://docs.nvidia.com/cuda/pdf/CUDA_C_Best_Practices_Guide.pdf https://ieeexplore.ieee.org/document/5704475 usw. Du wirst nicht drumherumkommen, dir selber die Optimierungsstrategien genauer anzusehen, und es muss auch verstanden werden, dass sich manche Sachen nicht einfach übertragen lassen. Also eben mal übertragen und beschleunigen ist nicht. Für Feinarbeiten und Versuche etc. (2 Stunden pro Tag) könnte man ein halbes Jahr ansetzen. Danach dann nochmal genauer fragen, und dann werden die Antworten hier auch ein wenig besser.
Hier noch ein paar Links, um sich einen schnellen Überblick (über Ansätze) zu verschaffen: https://en.wikipedia.org/wiki/Eigen_(C%2B%2B_library) https://developer.download.nvidia.com/GTC/PDF/GTC2012/Posters/P0213_CudaBasedGPU_Jaideep_Singh.pdf https://developer.nvidia.com/blog/drop-in-acceleration-gnu-octave/ https://developer.nvidia.com/blog/implementing-high-performance-matrix-multiplication-using-cutlass-v2-8/ https://indico.cern.ch/event/93877/contributions/2118023/attachments/1104150/1575274/OctaveCorrectecPaper03.pdf https://en.wikipedia.org/wiki/Math_Kernel_Library https://en.wikipedia.org/wiki/OneAPI_(compute_acceleration) https://codeplay.com/portal/news/2019/12/16/bringing-nvidia-gpu-support-to-sycl-developers
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.