سؤال

أنا مهتم في تطوير البرمجيات سوني بلاي ستيشن 3 لوحات المفاتيح التي تحتوي على متعددة النواة معالج الخلية, يستهدف أي PS3-متوافق مع لينكس التوزيع.

"واحد ينفذ PS3 أفضل من أعلى إلى نهاية المكتبية المتاحة ويقارن عدد ممكن 25 العقد من آي بي إم بلو جين العملاق." ~ PlayStation3 الجاذبية الشبكة

والأهم من ذلك:

  1. وحدة المعالجة المركزية - أي نظام التشغيل لينكس لديه حق الوصول إلى 6 7 التآزر في معالجة العناصر
  2. GPU - سوني تنفذ hypervisor تقييد الوصول إلى RSX
  3. موازية - IBM توفر مقدمة في برمجة تطبيقات موازية على PS3

حتى الشروع في العمل:

  1. تثبيت لينكس على PS3:
  2. الحصول على IDE مع مترجم مناسبة أن لينكس. ..(ساعدوني)
هل كانت مفيدة؟

المحلول

قد ترغب في محاولة تحميل C++ من Codeplay البرمجيات.فإنه يوفر موسعة اللهجة C++ تخفيف تطوير البرامج على الأجهزة متعددة النواة مثل معالج الخلية.

عبر مترجم toolchain يسمح تجميع رمز لل PS3 على النوافذ والتي يمكن أن تكون مفيدة بالنظر إلى القيود المفروضة على الموارد (على سبيل المثالذاكرة النظام) على وحدة التحكم PS3 تشغيل لينكس التي يمكن أن تؤثر تجميع مرات و جعل استخدام PS3 مثل سطح المكتب حرج.

إصدارات افراغ C++ compiler و هي الأدوات المتاحة استهداف PS3 GameOS و لينكس على الخلية مع خلية SDK.الخلية نسخة لينكس يتكامل مع الكسوف CDT عن IDE.

تنويه:أنا مطور في Codeplay.

نصائح أخرى

قد أيضا محاولة أوبونتو 8.10 (Intrepid Ibex).بهم PS3 الدعم هو جيد جدا, و تعليمات التثبيت و الخام التمهيدي على تجميع يمكن العثور عليها هنا.دول مجلس التعاون الخليجي 4.3 و binutils 4.18 تشمل أهداف الخلية جامعة بوليتكنك فلسطين (عام باور الهدف) و SPUs ، وهناك الحزم المتوفرة في مستودعات أوبونتو (مثلا ، spu-دول مجلس التعاون الخليجي ، spu-g++, spu-binutils, جامعة بوليتكنك فلسطين-gdb ، spu-newlib ، الخ) والتي سوف تجمع الثنائيات بالنسبة لك.

بقدر ما السليم IDE ، المرافق المذكورة أعلاه يجب أن تدمج مع غرامة عن أي IDE (أيKDevelop, كسوف CDT, Code::Blocks) طالما يمكنك العثور على تسليط الضوء على تركيب الملفات (المتاحة الأكثر شعبية ايديس).الخلية SDK هو متاح أيضا ، يمكن أن توفر أفضل التكامل ، و تتوفر حزم RHEL 5.2 و فيدورا 9 (يجب أن تكون قادرا على استخدام الغريبة لسحب هذه في Debian/Ubuntu ، ولكن ليس على يقين من ذلك).

OpenMPI هو فكرة جيدة, لقد كانت قادرة على تجميع الخلايا على أساس شفرات (هنا) لذلك أنا لا أعتقد أنه ينبغي أن يكون مشكلة.هل يمكن أيضا لفة الخاص بك تمرير الرسائل ، وانخفاض النفقات العامة هو مفتاح في استخراج الأداء الجيد في الخلية (على الرغم من أنني لا أعرف كيف مناسبة OpenMPI هو هذا ، يمكن أن تكون كبيرة).

متى Scarpino هذا الكتاب ، برمجة معالج الخلية, جدا حتى الآن و لديه الكثير من المعلومات الجيدة.أيضا ، موقع الكتاب لديه الكثير من الأمثلة البرمجية متوفرة للتحميل.

كان هناك أيضا معهد ماساتشوستس للتكنولوجيا الحال على البرمجة المتوازية طريق معالج الخلية يحتوي على بعض معلومات جيدة, على الرغم من أن بعض من هو خارج التاريخ ، أي أنه يستخدم الخلايا القديمة الميكانيكا حيث libspe قدمت المواضيع.مع أحدث نسخة من المكتبة, سوف تحتاج إلى الحصول على المواضيع الخاصة بك من أي مكان آخر (pthreads ، دفعة ، أيا كان) من أجل تشغيل برامج موازية.

أما عن نظام التشغيل مترجم, لقد تم استخدام الكلب الأصفر لينكس 6.1.YDL عملت بشكل جيد جدا حتى الآن أفضل بكثير من فيدورا 9 على أي حال, على الرغم من أن من المرجح نتيجة حقيقة أن YDL يأتي مع سوبر خفيفة الوزن نافذة مدير فيدورا 9 لا.لقد كان عدد قليل من المشاكل مع الشبكات ، ولكن هذه هي على الأرجح نتاج قليلا غريبة بيئة الشبكة التي لدي اقامة نظام في.

مرة واحدة كنت قد YDL وتشغيلها ، ثم تثبيت الخلية sdk فيدورا حزم على رأس (وهذا يستغرق قليلا من العمل ، cellsdk تثبيت البرنامج النصي زورا تسلم YDL كما RHEL, لا فيدورا).YDL لا يكون أكثر من SDK المتاحة في واحدة من حزمة اتفاقيات إعادة الشراء ، ولكن بشكل افتراضي ليس هو تثبيت فقط المجمعين (بالطبع لم يكن هذا الرقم حتى كنت قد اخترق IBM المثبت أن تفعل الشيء الصحيح).أنا فقط باستخدام الأساسية IBM المجمعين (لا XL الأشياء).

هناك أيضا الكثير من المعلومات المنتشرة في جميع أنحاء IBM الموقع, ولكن يمكن أن يكون قليلا من الصعب معنى.

أن تضع في اعتبارها عند تشغيل التعليمات البرمجية على SPEs من تصميم خاص -- الافتراضي حجم مكدس تختلف على نطاق واسع من مترجم إلى مترجم ، و يمكن أن تسبب جميع أنواع القضايا عند تجاوز.انها عادة ما تكون ممارسة جيدة أن تعلن معظم البيانات عالميا في SPE رمز ، وتجنب كومة باستثناء صغيرة جدا متغير المخصصات.

منذ ليس هناك ذاكرة التخزين المؤقت (أو...كل L2 ذاكرة التخزين المؤقت في المعنى) لا يوجد الأداء الحقيقي عقوبة لفعل هذا, و لن واجهت مشاكل مثل محاولة DMA البيانات إلى أو من عنوان الذاكرة التي لم تعد صالحة ، إلخ.

IBM SPE مترجم يعتبر عموما أفضل ، afaik ، على الرغم من أنني لم يسبق استخدامها شخصيا.

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