تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] استفسارات في المعالجة بالGPU و المعالجة على التوازي
#1
Exclamation 
السلام عليكم ..

عندي بعض الاستفسارات و امتى إني ألقى ليها إجابة عشان بحثت كتير و إلى الآن ما لقيت إلي انا عاوزه =/ ..

أولاً .. إزاي اربط البرنامج بتاعي بالـ GPU ؟
يعني بدل ما بعتمد عالـ CPU ف المعالجة يعتمد على الـ GPU .. او على الاتنين ف النفس الوقت
ده إلي لقيته من بحثي ( و تقريباً مش فاهم منه حاجة Big Grin ) :

ده بروجيكت لمكتبات و ملفات dll بتربطها ببرنامجك لجعله قادر على التعامل مع الgpu او البروسيسور متعدد النواة في 64x و بالتالي معالجة أسرع :
http://research.microsoft.com/en-us/proj...celerator/
اتبعت خطوات التركيب بالضبط الموجودة في المستندات المرفقة و نفس سرعة المعالجة ماتغيرتش .. مش عارف فين المشكلة ، انا بجرب سرعة المعالجة على الكود :
For ad = 1 To 1000000 Step 1
و بالكتابة في لست بوكس .. نفس سرعة الكتابة

ده برنامج فك تشفير md5 بيعتمد على الgpu في المعالجة .. مفتوح المصدر .. لكنه بيشتغل على اللينكس بس و لغته C :
http://whitepixel.zorinaq.com/

دي تقنية او مشروع CUDA من شركة NVIDIA للتعامل مع كروتها في المعالجة :
https://developer.nvidia.com/cuda-zone

و ده مستند من AMD عن المعالجة بالgpu :
http://developer.amd.com/wordpress/media...ev-2.7.pdf

سؤال كمان .. إزاي اخلي البرنامج يعمل عدة عمليات ف نفس اللحظة على التوازي .. يعني كمثال :
عندي لست بوكس فيه كذا رابط .. عايز البرنامج اول ما اضغط على زرار معين يطلب الروابط كلها ف نفس اللحظة ..
أنا دورت ف الموضوع ده و إلي وصلتله حاجة اسمها Await و Async ف الفريم نيتورك 4.5 و 4.5.1 الي بييجوا مع vs12 or 13 .. و دي عبارة عن إن البرنامج لما يطلب كذا صفحة .. بيطلب مثلاً الصفحة الاولى و ما ينتظرش الرد من الصفحة و يطلب الصفحة إلي بعديها .. بس ده برده طلب على التوالي .. الإختلاف إنه بينتقل من طلب صفحة للي بعديها دون إنتظار الرد على الطلب من الصفحة الأولى ..

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

معلش على التطويل .. بس بجد الأسئلة دي بقالي كتير جداً بدور على إجابتها و ملقتش الحاجة إلي أنا عايزها بالضبط ..

و شكراً ليكم و جزاكم الله خيراً Smile ..
رطّب لسانك و قلبك بذكر الله Smile
سبحان الله و الحمد لله و لا إله إلا الله و الله أكبر
سبحان الله و بحمده .. سبحان الله العظيم
اللهم صل و بارك على محمد صلى الله عليه و سلّم

==============
معاً لإثراء المحتوى العربي

الرد }}}
تم الشكر بواسطة:
#2
أين خبراء البرمجة :-D ؟!
رطّب لسانك و قلبك بذكر الله Smile
سبحان الله و الحمد لله و لا إله إلا الله و الله أكبر
سبحان الله و بحمده .. سبحان الله العظيم
اللهم صل و بارك على محمد صلى الله عليه و سلّم

==============
معاً لإثراء المحتوى العربي

الرد }}}
تم الشكر بواسطة:
#3
السلام عليكم
انا لست خبير !!
ولاكن لماذا تعتمد على GPU واكبر مهمتها معالجة الرسوميات بشكل سلاسل !! بالمعنى ليس مهمتها التعامل مع البيانات والمبرمجين المحترفين يدمجون بين GPU و CPU فقط لجعل ضغط البرنامج على هاتين الخاصيتين وتقليل استخدام الذاكرة لتسريع العمليات وتستخدم كثير في برامج التشفير وفك التشفير وعندما تستخدم اي تطبيق اخر وهاتين الخاصيتين يعملان بشكل مكثف على برنامج معين سوف يحدث تهنيق ومشاكل في النظام.
جميع البرامج تتعامل مع CPU بشكل جيدا وتختلف سرعة البيانات والتعامل معها من خلال سرعة المعالج وكبر حجم الذاكرة.

وقس على ذلك أن المعالج يتعامل مع البيانات على شكل سلاسل من البيانات بمعاونة الذاكرة ولو حدث هناك تداخل وخطأ في البيانات يحدث فيض للذاكرة وتهنيق في المعالج ومن ثم انهيار النظام في كل مرة تستخدم فيه البرنامج.

تعاملك مع المعالج بكل ادب, واحترام الذاكرة وكمبية البيانات المتدفقة لهما يساعد على سلاسة برامجك

وتذكر
تحليل تخطيط البرنامج وتقسيم كمية البيانات وتوفير احجام المتغيرات وضبطها بشكل ممتاز انت تخلق تطبيقات مميزة
تصميم نوافذ البرنامج وتقليل من حجم الرسوميات والصور وكثرة الفورمات وعدم التعامل معها من خلال انهاء مهماتها في الذاكرة يتعب النظام
اختيار طرق البرمجة التي تتعامل مع المكونات المادية بكل حذر وتفريق المهمات بعد الانتهاء تحافظ على سرعة البرنامج
اختبار البرنامج وقياس كمية البيانات التي يستخدمها البرنامج ومحاولة تحوييرها وتقليصها يضبط السرعة كذلك
الرد }}}
تم الشكر بواسطة:
#4
شكراً أخي الكريم على ردك Smile ..

بدايةً .. البرنامج ليس موجّه للسوق و البيع .. بل هو للإستخدام الشخصي .. يعني ما يهمني إنه يكون في ثبات أو لأ أو أنه ما يكون في برنامج غيره مفتوح أو لأ (لضمان الثبات و عدم إنهيار النظام) .. المهم أنه يؤدي الغرض ؛

و كأنني سألت "كيف اقوم بكسر سرعة الـCPU؟" ، و انت اجبتني "لا تكسر سرعة المعالج لأن هذا يرفع درجة حرارته و يقصّر من عمره" Big Grin .. لدي دراية بالأضرار و السلبيات لكن تهمني المميزات و تأدية الغرض المطلوب أكثر من السلبيات ؛

بالرجوع لبرنامج whitepixel .. نجد أنه يعتمد على كرت الشاشة بشكل أساسي و يعالج بسرعة رهيبة جداً و مع ذلك موجّه للسوق "مجاناً" و جاهز للتحميل و الإستعمال و ليس به مشاكل .. نقول "سر الصنعة" ؟ لا اعتقد .. لأني كما ذكرت سابقاً أنه مفتوح المصدر Smile .. المشكلة التي تمنعني من الاستفادة بهذا السورس كود أنه بلغة C و أنا vb.net بالإضافة إلى أن البرنامج مصمم ليعمل على نظام تشغيل لينكس ؛

Smile
رطّب لسانك و قلبك بذكر الله Smile
سبحان الله و الحمد لله و لا إله إلا الله و الله أكبر
سبحان الله و بحمده .. سبحان الله العظيم
اللهم صل و بارك على محمد صلى الله عليه و سلّم

==============
معاً لإثراء المحتوى العربي

الرد }}}
تم الشكر بواسطة:
#5
الو حوّل :-D !
رطّب لسانك و قلبك بذكر الله Smile
سبحان الله و الحمد لله و لا إله إلا الله و الله أكبر
سبحان الله و بحمده .. سبحان الله العظيم
اللهم صل و بارك على محمد صلى الله عليه و سلّم

==============
معاً لإثراء المحتوى العربي

الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم