بخشی از مقاله
استراتژيهاي توزيع داده براي تصاوير high-resolution
خلاصه:
تصاوير مقياس بزرگ و high- resolution بصورت افزايشي براي برنامههاي كاربردي interactive (گرافيكهاي سهبعدي) شامل تصاوير دادهاي مقياس بزرگ و محيطهاي مجازي پوششي و طرحهاي مشترك است و مورد استفاده قرار ميگيرند. اين سيستمها بايد شامل يك كارآيي بسيار بالا و افزاينده زير سيستمهاي rendering براي توليد تصاوير high-resolution در اندازههاي فريمهاي real – time باشند.
ما تحقيق وبررسي ميكنيم كه چگونه سيستمي را كه تنها از اجزاي قطعات گرانقيمت در يك pc cluster استفاده ميكند بسازيم. هدف اصلي پيشرفت و توسعه الگوريتمهاي كارا براي تقسيمبندي و توزيع وظايف rendering به صورت مؤثر در پهناي باند عمليات پردازشي و انبارداري و محدوديتهاي يك سيستم توزيع يافتهاست. در اين مقاله ما سه راه متفاوت را كه از نظر نوع
دادههايي كه از Client به سرورهاي تصوير ميفرستند فرق دارند با هم مقايسه ميكنيم به كنترل مقادير اوليه و پيكسلها براي هر راه آزمايشات اوليه را به وسيله يك سيستم الگو كه يك تصوير ديواري چند پروژهكتوره را با يك pc-cluster توليد ميكند، شرح ميدهيم. ما راههاي متفاوتي را كه براي ساختارهاي متفاوت سيستمي مناسب باشد با بهترين انتخاب مربوطه به پهناي باند ارتباط
ي ظرفيت انبارداري و قدرت پردازشكردن Clientو سرورهاي تصويري را پيدا كرديم:
كليدهاي اصلي مؤلف: رندركردن موازي، گرافيكهاي شبكهشده، تصاوير مقياس بزرگ تصوير Interactive، و محاسبه Cluster
فهرست مقاله:
1. معرفي
2. طبقهبندي استراتژيهاي توزيعداده
3. مدل اجرايي همگامسازي شد
4. مدل توزيع اوليه
5. مدل توزيع پيكسل
6. نتيجهگيري و كار آينده
7. مراجع
1. معرفي:
ما در حال عبور از دوران جديدي از محاسبات كامپيوتري هستيم كه در آن تبادل با دادهها در سراسر زمان و فضا با وسايل تصوير ubiquitous موجود است. دلايل وجود اين تغييرات در اين دروان ساده هستند. پيشرفتهاي سريع در كارآيي cpu ظرفيت ذخيرهسازي نهايي باند شبكه و توليدات وسايل نمايشي.
راه سنتي استفاده از كامپيوترها و شبكهها بيشترين سيكلهاي cpu را براي حل مشكلات تكنيكي و مديريت و سازماندهي تراكنشهاي تجاري مصرف ميكردند، اين رزوها بيشتر سيكلهاي cpu نهايي باند شبكه در نقل و انتقالات شامل بوجود آوردن محتويات گمشده و تحريفشده فرستادن اطلاعات و ارائهكردن اطلاعات براي مردم براي جستجوكردن و تصويرساختن صرف ميشوند.
در اين دهه اخير تصاوير نسل جديد مانند (light-ernitting plastics)LEP و
(organic light- emitting devices) OLED، اجزاي قطعات با ارزشي ازنظر تجاري خواهند شد. اين وسايل بسيار گران قيمت هستند. آنها ممكن است به ديوارها، پنجرهها، لوازم منزل و… وصل شوند. آنها ممكن است تكهتكه سطح يك اتاق، كف يك اتاق و يا حتي يك ساختمان را به صورت يكپارچه بپوشانند. پيشرفت آنها يك مشكل جديد تكنيكي جالب را معرفي خواهد كرد:
چگونه بايد سيستمهاي كامپيوتري براي توليد پيكسلهاي بسيار زياد طراحي كنيم؟
خوشبختانه در بيشترحالات منطقي همه تصاوير نيازي به اينكه يكمرتبه با resolution كامل يا در اندازههاي فريمهاي ويدئويي update شوند،ندارند. در عوض تعداد كمي از تصاوير بازخور را به نقل و انتقال user كه به زمانهاي سريع refresh نياز خواهد داشت. در زماني كه اكثرتصاوير ديگر ميتوانند در كمترين فركانس و يا در پائينترين update, resolution شوند نشان ميدهند در ضمن تصاوير براي استفادهكنندهاي كه بتواند خالي يا سفيد باقي بماند مشخص نيست.
هدف طراحي يك سيستمrenering قوي و انعطافپذير براي توليد تعداد زيادي از پيكسلها كه در يك محيط پويا روي تصاوير متعدد فشرده ميشوند است.
سيستم جاري ما در شكل 1 نشان داده شده كه شامل 24 پروژكتور چيدهشده در يك گريد 4×6 براي شكلبخشيدن به يك تصوير بيجدار (Seamless) روي يك صفحه پروژكتوردار است.
Resolution هر پروژكتور 768×1024 است. پس در كل resolution ديوار k 3 ×k 6 است.
( M pixels 18). هر پروژكتور بوسيله يك pc بهم وصل شده به يك شبكه كار ميكند. اين سيستم همچنين شامل pc هايي براي tracking ورودي استفادهكننده و تركيبكردن صداها باري 14 – Speaker و اجراكردن برنامههاست. قيمت تمام شده اين سيستم در حدود k 200 $ است. در مقايسه با سيستمهاي rendering سنتي ساختارها سودهاي بسياري دارد. اول ما از اجزاي قطعات سختافزاري و همچنين سيستم با كمترين هزينه و بيشترين قابليت تغيير و تكنولوژي Track ها بهتر از سيستمهاي ديگر با سختافزار رايج استفاده كرديم. دوم ما از يك شبكه براي ارتباط بين پردازندهها كه قابليت انعطافپذيري زيادي دارند استفاده ميكنيمبراي نمونه پردازشگرهاي مختف و متفاوت هر وسايل نمايشي كه ميتواند به سيستم به صورت مستقل اضافه شوند. در آخر، تصاويري كه از چندين زيرتصاوير متشابه تركيب شدهاند در fromebuffer هاي كامپيوتري متفاوت نمايش داده ميشوند. اين خصوصيات يك تصوير موازي طبيعي تجزيه شده از محاسبات rendering را كه توانايي ايجاد تصاوير با high – restolution را دارند توليد ميكند. هدف اوليه بناكردن استراتژيهاي rendering كه مؤثر با عمليات پردازشي در انبارداري و خصوصيتهاي نهايي باند اجزاي قطعات كار ميكنند است.
در اين مقاله ما نتايج تحقيق در استفادهكردن از اجزاي قطعات براي بناكردن يك سيستم كارآي
ي بالا كه وسايل نمايشي چند شبكهشده را توليد ميكنند بررسي ميكنيم. هدف از مطالعه ما مشخصكردن عمليات پردازشي، انبارداري و نيازمنديهاي ارتباطي از چندين ساختارهاي سيستمي ممكن است. در مورد پردازش توزيع يافته ميشود و نتيجه اصلي تحقيق همگامسازي ميشود. در مورد بعدي پردازش متمركز شدهاست و نتيجه تحقيق روي توزيعيافتگي داده تأثير دارد.
2- طبقهبندي استراتژيهاي توزيع داده:
براي برنامههاي كاربردي كه در سراسر اجزاي قطعات شبكهشده چندگانه اجرا
ميشوند، ما بايد توجه كنيم كه چگونه داده را بين قطعات توزيع كنيم و چگونه اجرا را همگامسازي كنيم. يك مدل برنامهنويسي ممكن، client-server است. براي نمونه هر كاربري ميتواند با يك client در حاليكه مروروها تصاوير را مديريت ميكنند مبادله اطلاعات (interact) كنند. در اين مقاله سه روش و مرحله وجود دارد كه در هركدام ارتباط client-server ممكن است رخ دهد.( در شكل نشان داده شدهاست) سه شكل متفاوت از داده كه روي شبكه فرستاده ميشوند:
كنترل: (اجراي همگامسازي شده)
يك كپي از برنامههاي كاربردي روي هر سرور نمايشي اجرا ميشود. Client رويدادهاي user-interface را اداره ميكند و اطلاعات كنترلي را( براي مثال رويدادهاي همگامسازي يا تغييرات در view به هر سرور نمايشي ميفرستد. در اين مدل نيازمنديهاي شبكه نوي حداقل است.
مقادير اوليه:
در اين مدل user-interface و برنامه كاربردي در سمت client موجود است. برنامههاي كاربردي حتماً مقادير اوليه گرافيكهاي دوبعدي و سهبعدي را بروي شبكه در سرور نمايشي كه آنها را rester ميكنند و نمايش ميدهند ميفرستد. در اين طرح نيازمنديهاي شبكه به پيچيدگي تصوير بستگي دارد. درهر سرور نمايشي نيازمنديهاي rendering يك رويداد كامل است مگر اينكه بعضي از شكلهاي مستقل از view انتخاب شده انجام شود. بطور ايدهآل يك طرح موازنه بار rendering بار در هر سرور ماشين را
توزيع ميكند.
پيكسلها:
اينجا برنامه كاربردي و همه rendering pipdine در سمت client اجرا ميشود client پيكسلها را( نوعاً تصاوير JPEG يا جريانهاي MPEG شده) به سمت سرور حمل ميكند و سپس شبكه بطور نسبي به re solution نمايشي احتياج دارد. در تصوير سرور به سادگي پيكسلها را زيرگشايي ميكند و بنابراين به مقدار كمي انبار و عمليات پردازشي قوي نياز دارد. از طرف ديگر اگر ايستگاه كاري يك client واحد يك برنامه كاربردي را اجرا كند كه تصوير كامل با resolution بالا را توليدميكند نيازمنديهاي rendering يك client براي برنامههاي كاربردي پويا بسيار عظيم است. با اينكه اگر بسياري از برنامههاي كاربردي كه هر كدام يك قسمت از ديوار را ميپوشاند بار client ادارهشدني است.
3- مدل اجراي همگامسازي شده:
يك روش از اجراي يك برنامه كاربردي در يك تصوير ديواري تقسيمبندي شده استفاده از يك برنامه مدل اجرايي همگامسازي شدهاست. در اين مدل يك نمونه دوتايي از برنامه كاربردي در هر سرور اجرا ميشود. تنها تفاوت بين نمونههاي اجراشدن از محيط اطلاعات است. مانند هر سروري كه در تصوير تقسيمبندي شده نمايش داده ميشود. هر يك براي اين مدل به حداقلرساندن ارتباط روي شبكه است. تنها پيامهاي كنترلي نياز است كه روي شبكه فرستاده شود. اينها پيامهاي
ي مانند همگامسازي رويدادها و ورودي كاربر هستند و كمترين پهناي باند مورد نياز را منجر ميشوند.
در مدل همگامسازي شده يك مرز همگامسازي ايجاد شدهاست كه براي همه نمونهها در مورد آن مرز رفتار يكساني فرض شدهاست. ما با داشتن اين مرز درهر دو سطح سيستم و سطح برنامه كاربردي آزمايش انجام دادهايم. مرز همگامسازي در سطح سيستم هر دو گرافيكهاي اولي
ه يكساني را توليد ميكند و گرافيكهاي تسريعكننده براي انجامدادن انتخاب قسمت ويژه (tile-specific ) كه در آن فقط مقادير اوليههايي كه در يك ناحيه صفحه نمايش (screen)سرور ميافتد render ميشوند استفاده ميشود. ( شكل 3 را نگاه كن) اين تكنيك مخصوصاً اگر كه منبع براي برنامه كاربردي موجود نباشد مفيد است. اگر مرز همگامسازي به سمت سطح برنامه كاربردي حركت كنند. بهينهسازي بيشتر ممكن است. يك لايه نرمافزاري مستقل از view ميتواند خودش را براي ايجاد قسمت (tile) خصوصي از مقادير اوليه محدود كند.( نسبت به توليد همه مقادير اوليه در تصوير). يك مثال از دومين بخش از يك تصويرگرافي روز برنامه است كه دادة تصويري در يك درجهبندي از اشياء سازماندهي ميكند. يك قسمت مخصوص (tile-specific) view ي هرم ناقص مفروض است. برنامه ميتواند اشيايي را كه كاملاً بيرون از هرم افتاده است خارج كند. اين راه ميتواند كارآيي پردازش و كارآيي انتقال داده را بخوبي افزايش دهد.
ما از frameworke همگامسازي براي هر دو سطح سيستم و برنامه كاربردي استفاده ميكنيم با استفاده از feamework همگامسازي ما اطلاعات مفيدي روي چندين برنامه كاربردي شامل ماشينها ( از world up Toollit شكل 4) At lontis (silicon Grophics) و (isosurface, Visualization tool) Isoview جمعآوري شدهاست. نتايج ما نشان ميدهد كه ارتباط همگامساز رويهم رفته كوچك است، كمتر از 500 بايت در frome برنامههاي كاربردي در حالت گرافيكهاي سهبعدي سرعت بين 2/1 تا 2/4 در مقايسه با يك روش server – client تغيير ميكند.( مانند توزيع اوليه بخش 4 جدول 1 را نگاه كن) مقدار تغييرات سرعت با مقدار مقادير اوليه و زمان محاسبه
مقدار اوليه پيشفرض تأثيرپذير است. بطوركلي مدل همگامسازي وقتي مقدار اوليههاي زيادي وجود داشته باشد و زمان محاسبه مقدار اوليه پيشفرض كم باشد بخوبي انجام ميشود. وقتي زمان محاسبه مقدار اوليه پيشفرض بالاست. اغلب هيچ يا كمي تغييرات سرعت وجود دارد براي اينكه يك روش client-server ميتواند ارتباط شبكه يا محاسبه را overlap كند.
آزمايشات ما همچنين نشان دادهاست كه همگامسازي سطح برنامه كاربردي بطور قابل توجهي بهتر از همگامسازي سطح سيستم انجام ميشود. در برنامههاي كاربردي Atlontis ما قادريم به يك كاهش ثابت عمومي پنجاهدرصدي در محاسبه حالتهاي نادرست و مقادير اوليه گرافيكي برسيم.