حالة غريبة من بطء استيراد USD في Blender

2024-12-22

واجه مطور مشكلة في بطء استيراد مشاهد USD في برنامج Blender بشكل غير متوقع. أظهر تحليل الأداء أن المشكلة تكمن في دالة الفرز الداخلية لـ IDs في Blender، وهي `id_sort_by_name`. كان من المتوقع أن تكون هذه الدالة ذات تعقيد O(N)، لكنها تدهورت إلى O(N²) بسبب طريقة تسمية الملفات في USD. قام المطور بتعديل اتفاقية التسمية وتحسين خوارزمية الفرز، مما قلل من أوقات الاستيراد من 4 دقائق و40 ثانية إلى 8 ثوانٍ للملفات الأصغر. ومع ذلك، فإن المشكلة الأساسية نابعة من شرط Blender بفرز IDs، مما أدى إلى اقتراحات لاستبدال القائمة المرتبطة بشجرة Trie أو جدول هاش. تبرز هذه العملية تحديًا شائعًا في تحسين الأداء: وهو تحديد ومعالجة التعقيد غير المتوقع.

اقرأ المزيد
التطوير

QEMU يكتسب تسريع Vulkan مع تحديث برنامج تشغيل VirtIO GPU

2024-12-12

يدعم إصدار QEMU 9.2.0 والإصدارات الأحدث الآن تسريع Vulkan لـ VirtIO-GPU بفضل تصحيحات Venus. يمثل هذا تقدماً كبيراً في عرض الرسومات Vulkan لآلات QEMU الظاهرية. تشرح المقالة عملية الإعداد بالتفصيل، بما في ذلك تثبيت الحزم اللازمة (نواة لينكس 6.13+، QEMU 9.2.0+، برامج تشغيل Vulkan، إلخ)، وتجميع QEMU من المصدر، وإنشاء صورة آلة ظاهرية. في حين أن virt-manager لا يدعم حاليًا تكوين Vulkan، إلا أن معلمات سطر الأوامر توفر حلًا بديلاً. كما توفر المقالة نصائح لاستكشاف الأخطاء وإصلاحها، بالإضافة إلى ملاحظات حول القيود الحالية في virt-manager وlibvirt.

اقرأ المزيد
التطوير