المضيف CUDA للجهاز (أو الجهاز لاستضافة) عمليات MAMCPY مع رسومات تقديم الطلب باستخدام OpenGL على نفس بطاقة الرسومات

StackOverflow https://stackoverflow.com/questions/1694549

  •  18-09-2019
  •  | 
  •  

سؤال

لقد نشرت مشكلتي في منتديات CUDA، ولكن لست متأكدا مما إذا كان من المناسب نشر رابط هنا لمزيد من الأفكار في حالة وجود عدد كبير من الجماهير المختلفة بين المنتديات. الرابط هو هنا. وبعد أعتذر عن أي إزعاج ونقدر أي تعليقات على هذا السؤال، كما لم أسمع مرة أخرى بعد في بعض التفاصيل من مشاكل في الوصول وإدارة ذاكرة CUDA معينة. شكرا مقدما.

هل كانت مفيدة؟

المحلول

لست متأكدا مما إذا كانت هذه ذات صلة دون رؤية المزيد من التعليمات البرمجية الخاصة بك ولكن أين يتم استدعاء Destructor Cudaobj؟

أنت قلت:

ومع ذلك، إذا قمت بذلك بهذه الطريقة، فقد وصلت إلى أخطاء في الخروج من التطبيق في سطر Destructor's Cudaobj حيث يتم استدعاء Cudafree (). يسبب هذا رمز تنظيف الذاكرة بعد عدم تنفيذ رمز تنظيف سياق CUDA بسبب الخطأ، مما يترك وراء فوضى على تسرب الذاكرة.

بعد وصفك لكيفية تغيير أشياء إعداد CUDA لتكون في بداية الوظيفة الرئيسية للخطر 2. إذا كنت تتصل بالمدمر على Cudaobj من مؤشر ترابط مختلف، فسيكون إجراء عملية تنظيف Cudafree في حالة خطأ لنفس السبب الذي اضطررت لنقل تهيئة CUDA إلى مؤشر ترابط 2. يبدو وكأنه تعرف هذا بالفعل، ولكن سياق CUDA هو محدد لمؤشر موضوع واحد في العملية الخاصة بك. التنظيف في مؤشر ترابط مختلف غير مدعوم وفقا للوثائق، على الرغم من أنني لم أحاول ذلك أبدا بنفسي. أتمنى أن يساعدك هذا

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top