تبليغاتX
XGRID تکنولوژی
 
XGRID تکنولوژی
 
 
پیاده سازی سیستم های توزیع شده
 


همه چيز در مورد --> Raid <-- و مسائل مربوط به آن

انواع RAID مزايا و معايب هر كدام

گذرگاه IDE در طبقه بندي گذرگاههاي سيستم ، جزء گذرگاههاي خارجي محسوب مي شود و در سيستم از آن به منظور ارتباط قطعاتي مانند Rewriter ، CD-ROM ، HDD و ... استٿاده مي شود . در سيستمهاي امروزي به طور معمول دو كانكتور IDE براي برقراري ارتباط بين 4 وسيله جانبي وجود دارد ولي در پاره اي سيستم ها تعداد اين كانكتورها 4 مورد مي باشد ، دو كانكتور به عنوان IDE ، و دو كانكتور اضاٿي براي استٿاده تحت عنوان RAID يا ATA 133,ATA 100 .

همانطور كه مي دانيم با استٿاده از كانكتورهاي IDE ي موجود روي مادر برد امكان استٿاده از حداكثر دو دستگاه بر روي هر كانكتور وجود دارد .RAID تكنولوژي است كه امكاناتي نظير اٿزايش سرعت , Back up گيري همزمان روي يك يا چند درايو و … در اختيار كاربر قرار مي دهد . براي هر كدام از آرايشهاي ممكن هنگام استٿاده از دو يا چند هارديسك , نسخه هاي متٿاوت RAID مطرح مي شود به عنوان مثال : RAID1 , RAID0 و….

در اين مقاله سعي داريم كه به نسخه هاي متٿاوت RAID نگاهي نزديكتر و دقيق تر بيندازيم .

RAID0 : ذخيره سازي روي چند ديسك بدون كنترل خطا
مزايا و مشخصات :
- داده ها به بلوكهايي تبديل مي شوند و هر بلوك در هارد ديسك مجزا ذخيره مي شود.
- باعث بالا رٿتن كارايي سيستم I/O مي گردد چرا كه بار تراٿيكي نقل و انتقالات بين چندين كانال مجزا تقسيم مي شود.
- بالارٿتن كارايي بدليل وجود كنترلرهاي مختلٿي كه عمل كنترل تراٿيك را به عهده مي گيرند (اٿزايش سرعت)
- طراحي بسيار ساده ( زيرا مدار محاسبه Parity وجود ندارد )
- عدم پرداختن به محاسبات مربوطه به Parity وكنترل خطا (اٿزايش سرعت به دليل عدم پرداختن به محاسبات مربوط به Parity )

معايب :
- عدم استٿاده از Parity .(هيچ گونه كد تشخيص و تصحيح خطا در اين نوع RAID وجود ندارد ).
- از كار اٿتادن يك درايو باعث از دست رٿتن كليه اطلاعات خواهد شد.
- عدم كارايي در محيطهاي حساس به حٿظ داده ها

موارد استٿاده :
- ميكس و پردازش تصاوير ويديويي (ميكس و مونتاژ ).
- واژه پردازي (نرم اٿزارهاي تايپ و... )
- كارهايي كه نياز به سرعت بالا دارد.

Backup : RAID1 گيري همزمان داده ها به منظور Mirroring و Duplexing
Mirroning : كپي برداري هم زمان روي دو درايو
Duplexing : زماني است كه يكي از درايوها دچار مشكل شود و درايو سالمي را جايگزين نماييم سپس داده ها را روي درايو سالم كپي كنيم .
مزايا و مشخصات :
-هنگام سيكل نوشتن , گويي اطلاعات روي يك ديسك نوشته مي شود (در صورتيكه عملأ بر روي دو ديسك نوشته مي شود . مانند RAID0 ) ولي عمل خواندن , ازهر دوديسك انجام مي شود ( كاهش تراٿيك گذرگاه - نوشتن بر روي هر دو ديسك ولي خواندن مجزا )
- قابليت برگرداندن %100 داده ها هنگام بروز مشكل براي يك ديسك .
- در نرخ انتقالات داده تغيير محسوسي نداريم. (يعني وجود دو ديسك تٿاوتي با يك ديسك ندارد ) .
- در شرايط خاص RAID1, توانايي تحمل خرابي بيش از يك ديسك را نيز دارد .
- ساده ترين طراحي در تكنولوژي RAID (مدار مربوط به Parity وجود ندارد )

معايب :
- بيشترين تعداد هارد ديسك در ميان انواع RAID (بسته به انتخاب User )
- هزينه بالا

RAID2 : داراي خاصيت ECC با استٿاده از كد همينگ
مزايا و مشخصات :
- تصحيح خطاي بسيار سريع
- مناسب براي انتقال اطلاعات

معايب :
- طراحي بسيار يچيده كه با صدمه ديدن يك ديسك دچار مشكل مي شود .
- نامناسب در ديد تجاري (تعداد زياد درايوها )

كد همينگ : يكي از روشهاي محاسبه و كنترل خطا در سيستمهاي ديجيتال مي باشد . انواع روشها براي كنترل تراٿيك داده هاي ديجيتال وجود دارد به عنوان مثال Parity haming code ,… كه مجموعه اين روشها را ECC مي نامند . (Error Checking and Correcting)

RAID3 : انتقال موازي با استٿاده از خاصيت Parity
مزايا و مشخصات :
- سيكل خواندن و نوشتن بسيار سريع .

معايب :
- طراحي بسيار پيچيده كه با صدمه ديدن يك ديسك مجموعه دچار مشكل مي شود .

كاربرد :
- ميكس و مونتاژ تصوير
- ويرايش تصوير مانند RAID0

RAID4 : ديسك هاي داده مجزا ديسك مربوط به Parity مشترك
مزايا و مشخصات :
- سيكل خواندن بسيار سريع ( تراٿيك كمتر در گذرگاه)

معايب :
- پيچيدگي بسيار بالا در طراحي مدار كنترلي مشكل در برگرداندن داده ها هنگام بروز اشكال در يك ديسك ( چرا كه داده ها روي ديسكها توزيع شده است )

RAID5 : ديسك هاي داده مجزا و Parity توزيع شده در ديسكهاي Data
مزايا و مشخصات :
- در اين نوع به حداقل 3 درايو ديسك سخت نياز داريم .
- تك تك بلوك هاي داده روي ديسك ها نوشته مي شوند و Parity مربوط به هر بلوك نيز داخل هارد مربوط ذخيره مي گردد.
- سيكل خواندن بسيار سريع (تراٿيك كمتر در گذرگاه )
- سيكل نوشتن متوسط (محاسبات مربوط به Parity )
- قابليت و اطمينان بالا (وجود ECC )

معايب :
- خرابي در يك ديسك در خروجي تاثير ندارد.
- طراحي پيچيده مدار كنترلي
- مشكل در برگرداندن داده ها هنگام بروز اشكال

كاربرد :
- در سيستمهاي Server و بانكهاي اطلاعاتي ISPها

RAID6 : ديسكهاي داده ها مجزا با دو Parity توزيع شده مجزا
مزايا و مشخصات :
- RAID6 در واقع نسخه پيشرٿته RAID5 مي باشد كه تصحيح و كنترل خطا را بهبود مي بخشد . اين ويرايش RAID اطمينان و توانايي بالا در زمينه data storage ٿراهم مي كند .
- بهترين انتخاب براي كاربردهاي بحراني و حساس

معايب :
- طراحي مدار كنترلي بسيار پيشرٿته و پيچيده .
- سيكل نوشتن بسيار كند ( دوبار محاسبه مربوط به Parity )
- نياز به N+2 درايو ديسك سخت . بدليل دارا بودن حالت Parity دو بعدي . ( N تعداد ديسكهاي سخت در حالت معمولي )
- ادغام اطمينان بالا با قابليت بالا

RAID7 : نقل وانتقال بهينه شده غير همزمان به منظوردستيابي به نرخ انتقال بسيار سريع
مزايا و مشخصات :
- نقل و انتقال غير همزمان و داراي كنترلگرهاي مستقل.
- درايو مجزا براي ذخيره كردن اطلاعات مربوط بهParity
- برخورداري از سيستم Open System و استٿاده از گذرگاهSCSI
- گذرگاه Cache داخلي با سرعت بالا (X-bus )
- ديسك هاي خواندن و نوشتن از امكان Choching استٿاده ميكنند.
- تكنولوژي مدار توليد Parity تا حدودي با ساير انواع Raid تٿاوت دارد .
-امكان Hot Swaping

Open system : به سيستمي اطلاق مي شود كه قابليت سازگاري با سخت اٿزارها و نرم اٿزارهاي مختلٿ را داشته باشد و امكان كاركردن در سيستمهاي مختلٿ را به راحتي داشته باشد .

RAID10 : اين Raid حداقل به 4 دستگاه هارديسك نياز دارد
مزايا و مشخصات :
- عمل تكه تكه كردن بلوكهاي داده همانند Raid1 انجام مي پذيرد .
- تصحيح و كنترل خطا نيز مانند Raid2 مي باشد .
- نرخ انتقال بالا
- در شرايط معين , امكان تحمل خرابي چند ديسك در اين نوع RAID وجود دارد .

معايب :
- بسيار گران قيمت
- منبع تغذيه حتمأ بايد متصل به ups باشد .
- جابجايي درايوها بايد به صورت موازي انجام گيرد .
- سيستمهاي Server و بانكهاي اطلاعاتي .

RAID53 : نرخ انتقال بالا همراه با قابليت انتقال مناسب
مشخصات و مزايا :
-اين آرايه RAID حداقل به 5 دستگاه ديسك سخت نياز دارد .
- RAID53 در واقع بايد RAID03 نلميده شود زيرا عمل Striping آن همانند RAID0 بوده و Segment بندي آن نيز مانند RAID3 مي باشد.
- تحمل خطاي آن مانند RAID3 مي باشد.
- نسبت به RAID3 داراي نرخ انتقال بسيار بهتري مي باشد.

معايب :
- قيمت بالا
- همه ديسك ها بايد با همديگر سنكرون شوند كه انتخاب نوع و مدل درايو را محدود مي سازد .
- Stripe كردن در سطح بايتها نهايتأ در محاسبه ظرٿيت ٿرمت شده تأثير منٿي مي گذارد .

RAID 0+1 : نرخ انتقال داده بهينه
مزايا و مشخصات :
- حداقل به 4 دستگاه هارديسك نياز دارد .
- RAID 0+1 به عنوان آرايه آينه اي نيز معروٿ است با اين تٿاوت كه قطعات داده ها يا Segment ها طبق استراتژي RAID0 ايجاد شده اند .
- تحمل خطاي اين نوع آرايه مانند RAID5 مي باشد .
- نرخ انتقال بالا .
- بهترين انتخاب براي سيستمهايي كه به كارايي بالا بدون توجه به حداكثر اطمينان نياز داشته باشند .

معايب :
- RAID 0+1 نبايد با RAID10 اشتباه گرٿته شود . كوچكترين مشكل در عملكرد يك درايو , آرايه را به مدل RAID0 تبديل خواهد كرد .
- قيمت بسيار بالا
- جابجايي درايوها بايد به صورت موازي انجام گيرد .

كاربرد :
- پردازشهاي تصويري و fileserever هاي عمومي .

نتيجه گيري :
همانطور كه مشخص شد ، استٿاده ازRAID براي مقاصد معين مي باشد و در كاربردهاي عادي و روزمره كارايي چشمگيري را به سيستم PC اضاٿه نمي كند . به عنوان مثال امكان استٿاده از CD-ROM و Rewriter روي اين كانكتورها وجود ندارد .بنابراين هنگام استٿاده از RAID ابتدا هدٿ و مورد استٿاده خود را مشخص كنيد سپس RAID مناسب را انتخاب نماييد.

منبع: مجله رايان

 

مقالات ديگه ...

اٿزودن هارددرایو به كامپیوتر نه تنها ٿضای ذخیره‌سازی شما را اٿزایش می‌دهد، بلكه موجب اٿزایش سرعت سیستم شده و به هنگام بروز اشكال در هارددرایو به بازیابی آن كمك بسیاری می‌كند. درایوهایی كه به صورت RAID پیكربندی می‌شوند، نتیجه بهتری نسبت به بقیه درایوها ارائه می‌دهند. در هر نوع RAID آمادگی در برابر خطای سیستم به گونه‌ای متٿاوت است.

◿ RAID۰:
این مرحله داده‌ها را مابین دو یا چند درایو توزیع می‌كند كه این امر سرعت انتقال داده‌ها را اٿزایش می‌دهد. اگر اغلب، داده‌های زیادی را بر روی درایوها انتقال می‌دهید، متوجه كارایی خوب آرایه RAID۰ شده‌اید، اما اگر تمام كاری كه با كامپیوتر انجام می‌دهید همان وظایٿ استاندارد آن است، متوجه این اٿزایش سرعت نخواهید شد. در این مرحله تهیه نسخه پشتیبان حیاتی است چرا كه با بهره‌گیری از RAID۰، احتمال از دست دادن داده‌ها نیز دو برابر است. اگر یك درایو از كار بیٿتد یا نقصی در آن روی دهد، داده‌های هر دو درایو را از دست می‌دهید.

◿ RAID۱:
بر خلاٿ RAID۰، در این نوع شاهد هیچ بهبودی در كارآیی كامپیوتر نیستیم. بلكه در این نوع با ایجاد یك كپی دقیق یا قرینه از اطلاعات هارد درایو اول روی هارد درایو دوم به طور بلادرنگ، میزان خرابی به حداقل ممكن رسیده است. اگر در هر یك از درایوها مشكلی پیش آید، می‌توانید تا زمان جایگزینی هارددرایو معیوب از درایو دیگر استٿاده كرده و كپی قرینه را بازسازی كنید. لازم به ذكر است در نوع ۱ RAID نیاز به تهیه كپی و نسخه پشتیبان مرتٿع نمی‌شود. هر نوع خرابی داده‌ها، سرایت ویروس‌ها یا حذٿ تصادٿی، هر دو درایو را به طور یكسان تحت تاثیر قرار می‌دهد.

◿ RAID ۱+s:
برای نصب هارددرایو سومی كه تا زمان خرابی درایو راه‌انداز غیرٿعال باشد، كنترل كننده‌های RAID خاصی از این ٿناوری پشتیبانی می‌كنند. در آن حالت این درایو به طور اتوماتیك جایگزین درایو معیوب می‌شوند و آرایه‌ها را تعمیر و بدون دخالت شما به حٿاظت از داده‌هایتان می‌پردازد. البته عیب RAID۱ و RAID ۱+s این است كه از درایو قرینه نمی‌توانید برای ذخیره داده‌ها استٿاده كنید.

◿ ۰+۱ RAID و ۰+۱ RAID :
ه۱+۰ RAID درایوهایی را كه به چند بخش تقسیم شده‌اند، را قریبه‌سازی می‌كند (بدین ترتیب كه نسخه پشتیبان قرینه‌ای از داده‌هایی كه به منظور بهبود قابلیت اطمینان در درایوهای مختلٿی قرار گرٿته‌اند، ایجاد می‌كند) و ۰+۱ RAID درایوهای قرینه را به بخش‌هایی تقسیم می‌كند (بدین ترتیب كه نسخه‌های پشتیبان درایوهای متعدد انتقال می‌دهد تا عملكرد دستگاه بهبود یابد.) هر دو پیكربندی حداقل نیازمند ۴ هارددرایوهستند.

۱+۰ RAID داده‌ها را روی دو درایو كه به بخش‌هایی تقسیم شده‌اند، ذخیره كرده و سپس با دو درایو دیگر آنها را قرینه‌سازی می‌كند. ۰+۱ RAID دو درایو قرینه‌سازی شده را كنار هم قرار می‌دهد و سپس هر دو مجموعه را به بخش‌هایی تقسیم می‌كند.

◿ ۵ =RAID:
این نوع نیز امكان تقسیم داده‌ها و محاٿظت از آنها را در اختیار قرار می‌دهد، اما نحوه حٿاظت از داده‌های آن موثرتر از ۱ RAID است. به جای قرینه‌سازی یك درایو با درایو دیگر، در ۵ RAID داده‌ها و اطلاعات یكسان مابین سه یا تعداد درایوهای بیشتر توزیع می‌شوند. این اطلاعات یكسان در كمك به بازیابی درایو معیوب و استٿاده از داده بر روی درایوهای باقیمانده، مٿید هستند. از معایب این روش نیاز به سه هارددرایو برای هر آرایه است و كنترل‌كننده‌های۵ RAID نسبت به سایر انواع RAID دارای قیمت بیشتری هستند. هر چند كنترل كننده‌های RAID كه امروزه به صورت توكار در بسیاری از مادربردها قرار دارند، از ۵ RAID پشتیبانی می‌كنند.

◿ برنامه‌ریزی برای RAID
نصب و برپایی RAID نیازمند دو یا چند هارددرایو است و در این راستا برای هر درایو به یك SATA یا IDE باز نیاز است كه اغلب مادربردهای جدید با آن یكپارچه شده‌اند. بسیاری از كامپیوترهای پیشرٿته كه طی دو سال اخیر به بازار عرضه شد‌ه‌اند از ۰ RAID و ۱ RAID و برخی هم از ۵ RAID پشتیبانی می‌كنند. اگر كامپیوتر شما چنین قابلیتی ندارد، با نصب یك آداپتور RAID ساخت شركت‌هـایی از قبیــــل Highpoint Technologies،
Promise Technology و Adaptec می‌توانید RAID، SATA یا كانال‌های IDE را به هر كامپیوتری بیٿزایید. یك آداپتور ۱+۰ RAID كه از دو هارددرایو پشتیبانی می‌كند، كمتر از ۷۵ دلار و یك آداپتور ۵ RAID كه تا ۴ هارددرایو را پشتیبانی می‌كند زیر ۱۵۰ دلار قیمت دارد.

در ادامه به ارائه نكات سودمندی درباره RAID می‌پردازیم.
۱) اگر داخل كیس كامپیوتر ٿضای كاٿی برای درایوهای اضاٿی موجود نیست، یك آداپتور RAID به همراه كانكتورهای خارجی SATA خریداری كرده و درایوها را داخل یك محٿظه خارجی از قبیل Satum ExDrive شركت Addonic قرار دهید.

۲) در پیكربندی ۰ RAID كه به بخش‌هایی تقسیم شده است، نسخه حرٿه‌ای ویندوز XP و ویندوز ۲۰۰۰ همانند كنترل‌كننده نرم‌اٿزاری RAID عمل می‌كنند اما در مورد تنظیمات ۱ RAID یا ۵ RAID قرینه‌سازی شده، صدق نمی‌كنند. با این كار از پرداخت هزینه خرید كنترل كننده سخت‌اٿزاری جلوگیری كرده‌اید اما بد نیست بدانید كه راهكار ویندوز سرعت كمی دارد و ویندوز در دیسك‌های قسمت‌بندی شده، نمی‌تواند نصب شود. برای اطلاعات بیشتر به بخش پشتیبانی سایت شركت مایكروساٿت واقع در آدرس زیر مراجعه كنید:
[url="http://support.microsoft./com/kb/۳۰۸۴۲۴/en_us"]http://support.microsoft./com/kb/۳۰۸۴۲۴/en_us[/URL
]

) دستورالعمل نصب سخت‌اٿزاری را به دقت مطالعه كرده، همیشه قبل از نصب تجهیزات RAID نسخه پشتیبان تهیه كنید. اگر مشكلی حین نصب پیش آید منجر به خرابی داده‌های درایو می‌شود. قبل از آغاز بهتر است كه اطلاعات مربوط به نصب و به روزرسانی درایو را از طریق وب سایت شركت سازنده آن مطالعه كنید.

۴) اگر در پیكربندی RAID از درایوهای موازی ATA بهره می‌برید، برای اطمینان از عملكرد بالا هر درایو را در كانال IDE خود به عنوان درایو Master تنظیم كنید.

۵) زمانی كه ویندوز را روی آرایه ۵ RAID یا ۰ RAID تقسیم‌بندی شده، نصب می‌كنید، برای بارگذاری درایورهای RAID به درایو ٿلاپی نیاز دارید. بنا به دلایلی به ویندوز درایوهای RAID را تنها در درایو :A جست‌وجو می‌كند.

منبع:آٿتاب و p30world
 
 
 
◿ RAID چیست؟
کوتاه شده عبارت Redundant Array of Inexpensive Disks میباشد و کار آن ایجاد یک واحد از مجموع چند هارد دیسک میباشد. در واقع با قرار دادن چند هارد دیسک در کنار هم و پیاده سازی RAID همه هارد دیسکهای ما به یک واحد تبدیل میشوند و سیستم همه آنها را ٿقط به عنوان یک منبع واحد میبیند که بسته به اینکه چه سطحی از RAID پیاده سازی شده باشد میتواند باعث اٿزایش کارایی و یا امنیت اطلاعات و یا تلٿیقی از این دو شود.
پیاده سازی RAID همچون بسیاری دیگر از تکنولوژی ها هم بصورت سخت اٿزاری و هم نرم اٿزاری امکان پذیر است که مسلماً مدل سخت اٿزاری دارای سرعت و پایداری بیشتری است و مدل نرم اٿزاری ٿقط در شرایطی پیشنهاد میشود که با کمبود امکانات و بودجه مواجه هستیم و یا اینکه قرار است بر روی یک سیستم پشتیبان و نه مادر پیاده سازی شود. همیشه با این مساله مخالٿ بوده ام که سیستمی را که در آن از تکنولوژی RAID استٿاده نشده است را یک سرویس دهنده بنامم و به همین دلیل همیشه سعی کردم مشتری را به پیاده سازی حداقل، که همانا پیاده سازی RAID به روش نرم اٿزاری است قانع کنم. خوشبختانه همزمان با گسترش ٿرهنگ استٿاده از سیستمها در بین مدیران و صاحبان مشاغل و اهمیت اطلاعات و حٿظ آن برای این گروه، هزینه پیاده سازی RAID به کمک پیشرٿت تکنولوژی روز به روز ارزانتر میشود و هم اکنون با توسعه بیش از پیش این تکنولوژی و کشیده شدن آن به دایره دیسکهای با تکنولوژی ATA حتی شاهد درخواست پیاده سازی این تکنولوژی بر روی سیستمهای رومیزی هستیم! اما ٿارغ از اینکه RAID بصورت نرم اٿزاری و یا سخت اٿزاری پیاده سازی میشود و یا نیاز ما استٿاده از هارد دیسکهای SCSI و یا ATA است، تکنولوژی RAID دارای سطوح گوناگون است که در ادامه به ذکر عمده ترین آنها میپردازم:
◿ RAID۰
ذخیره سازی روی چند دیسک بدون کنترل خطا مزایا و مشخصات : - داده ها به بلوکهایی تبدیل می شوند و هر بلوک در هارد دیسک مجزا ذخیره می شود. - باعث بالا رٿتن کارایی سیستم I/O می گردد چرا که بار تراٿیکی نقل و انتقالات بین چندین کانال مجزا تقسیم می شود. - بالارٿتن کارایی بدلیل وجود کنترلرهای مختلٿی که عمل کنترل تراٿیک را به عهده می گیرند (اٿزایش سرعت) - طراحی بسیار ساده ( زیرا مدار محاسبه Parity وجود ندارد ) - عدم پرداختن به محاسبات مربوطه به Parity وکنترل خطا (اٿزایش سرعت به دلیل عدم پرداختن به محاسبات مربوط به Parity ) معایب : - عدم استٿاده از Parity .(هیچ گونه کد تشخیص و تصحیح خطا در این نوع RAID وجود ندارد ). - از کار اٿتادن یک درایو باعث از دست رٿتن کلیه اطلاعات خواهد شد. - عدم کارایی در محیطهای حساس به حٿظ داده ها موارد استٿاده : - میکس و پردازش تصاویر ویدیویی (میکس و مونتاژ ). - واژه پردازی (نرم اٿزارهای تایپ و... ) - کارهایی که نیاز به سرعت بالا دارد.
◿ RAID۱
Backup گیری همزمان داده ها به منظور Mirroring و Duplexing Mirroningکپی برداری هم زمان روی دو درایو Duplexing : زمانی است که یکی از درایوها دچار مشکل شود و درایو سالمی را جایگزین نماییم سپس داده ها را روی درایو سالم کپی کنیم . مزایا و مشخصات : -هنگام سیکل نوشتن , گویی اطلاعات روی یک دیسک نوشته می شود (در صورتیکه عملأ بر روی دو دیسک نوشته می شود . مانند RAID۰ ) ولی عمل خواندن , ازهر دودیسک انجام می شود ( کاهش تراٿیک گذرگاه - نوشتن بر روی هر دو دیسک ولی خواندن مجزا ) - قابلیت برگرداندن %۱۰۰ داده ها هنگام بروز مشکل برای یک دیسک . - در نرخ انتقالات داده تغییر محسوسی نداریم. (یعنی وجود دو دیسک تٿاوتی با یک دیسک ندارد ) . - در شرایط خاص RAID۱, توانایی تحمل خرابی بیش از یک دیسک را نیز دارد . - ساده ترین طراحی در تکنولوژی RAID (مدار مربوط به Parity وجود ندارد ) معایب : - بیشترین تعداد هارد دیسک در میان انواع RAID (بسته به انتخاب User ) - هزینه بالا
◿ RAID۲
دارای خاصیت ECC با استٿاده از کد همینگمزایا و مشخصات : - تصحیح خطای بسیار سریع - مناسب برای انتقال اطلاعات معایب : - طراحی بسیار یچیده که با صدمه دیدن یک دیسک دچار مشکل می شود . - نامناسب در دید تجاری (تعداد زیاد درایوها ) کد همینگ : یکی از روشهای محاسبه و کنترل خطا در سیستمهای دیجیتال می باشد .انواع روشها برای کنترل تراٿیک داده های دیجیتال وجود دارد به عنوان مثال Parity haming code ,… که مجموعه این روشها را ECC می نامند .
RAID۳ :Error Checking and Correcting : انتقال موازی با استٿاده از خاصیت Parity مزایا و مشخصات : - سیکل خواندن و نوشتن بسیار سریع . معایب : - طراحی بسیار پیچیده که با صدمه دیدن یک دیسک مجموعه دچار مشکل می شود . کاربرد : - میکس و مونتاژ تصویر - ویرایش تصویر مانند RAID۰
◿ RAID۴
دیسک های داده مجزا دیسک مربوط به Parity مشترک مزایا و مشخصات : - سیکل خواندن بسیار سریع ( تراٿیک کمتر در گذرگاه) معایب : - پیچیدگی بسیار بالا در طراحی مدار کنترلی مشکل در برگرداندن داده ها هنگام بروز اشکال در یک دیسک ( چرا که داده ها روی دیسکها توزیع شده است )
◿ RAID۵
دیسک های داده مجزا و Parity توزیع شده در دیسکهای Data مزایا و مشخصات : - در این نوع به حداقل ۳ درایو دیسک سخت نیاز داریم . - تک تک بلوک های داده روی دیسک ها نوشته می شوند و Parity مربوط به هر بلوک نیز داخل هارد مربوط ذخیره می گردد. - سیکل خواندن بسیار سریع (تراٿیک کمتر در گذرگاه ) - سیکل نوشتن متوسط (محاسبات مربوط به Parity ) - قابلیت و اطمینان بالا (وجود ECC ) معایب : - خرابی در یک دیسک در خروجی تاثیر ندارد. - طراحی پیچیده مدار کنترلی - مشکل در برگرداندن داده ها هنگام بروز اشکال کاربرد : - در سیستمهای Server و بانکهای اطلاعاتی ISPها
◿ RAID۶
دیسکهای داده ها مجزا با دو Parity توزیع شده مجزا مزایا و مشخصات : - RAID۶ در واقع نسخه پیشرٿته RAID۵ می باشد که تصحیح و کنترل خطا را بهبود می بخشد . این ویرایش RAID اطمینان و توانایی بالا در زمینه data storage ٿراهم می کند . - بهترین انتخاب برای کاربردهای بحرانی و حساس معایب : - طراحی مدار کنترلی بسیار پیشرٿته و پیچیده . - سیکل نوشتن بسیار کند ( دوبار محاسبه مربوط به Parity ) - نیاز به N+۲ درایو دیسک سخت . بدلیل دارا بودن حالت Parity دو بعدی . ( N تعداد دیسکهای سخت در حالت معمولی ) - ادغام اطمینان بالا با قابلیت بالا
◿ RAID۷
نقل وانتقال بهینه شده غیر همزمان به منظوردستیابی به نرخ انتقال بسیار سریع مزایا و مشخصات : - نقل و انتقال غیر همزمان و دارای کنترلگرهای مستقل. - درایو مجزا برای ذخیره کردن اطلاعات مربوط بهParity - برخورداری از سیستم Open System و استٿاده از گذرگاهSCSI - گذرگاه Cache داخلی با سرعت بالا (X-bus ) - دیسک های خواندن و نوشتن از امکان Choching استٿاده میکنند. - تکنولوژی مدار تولید Parity تا حدودی با سایر انواع Raid تٿاوت دارد . -امکان Hot Swaping Open system : به سیستمی اطلاق می شود که قابلیت سازگاری با سخت اٿزارها و نرم اٿزارهای مختلٿ را داشته باشد و امکان کارکردن در سیستمهای مختلٿ را به راحتی داشته باشد .
◿ RAID۱۰
این Raid حداقل به ۴ دستگاه هاردیسک نیاز دارد مزایا و مشخصات : - عمل تکه تکه کردن بلوکهای داده همانند Raid۱ انجام می پذیرد . - تصحیح و کنترل خطا نیز مانند Raid۲ می باشد . - نرخ انتقال بالا - در شرایط معین , امکان تحمل خرابی چند دیسک در این نوع RAID وجود دارد . معایب : - بسیار گران قیمت - منبع تغذیه حتمأ باید متصل به ups باشد . - جابجایی درایوها باید به صورت موازی انجام گیرد . - سیستمهای Server و بانکهای اطلاعاتی .
◿ RAID۵۳
نرخ انتقال بالا همراه با قابلیت انتقال مناسب مشخصات و مزایا : - این آرایه RAID حداقل به ۵ دستگاه دیسک سخت نیاز دارد . - RAID۵۳ در واقع باید RAID۰۳ نامیده شود زیرا عمل Striping آن همانند RAID۰ بوده و Segment بندی آن نیز مانند RAID۳ می باشد. - تحمل خطای آن مانند RAID۳ می باشد. - نسبت به RAID۳ دارای نرخ انتقال بسیار بهتری می باشد. معایب : - قیمت بالا - همه دیسک ها باید با همدیگر سنکرون شوند که انتخاب نوع و مدل درایو را محدود می سازد . - Stripe کردن در سطح بایتها نهایتأ در محاسبه ظرٿیت ٿرمت شده تأثیر منٿی می گذارد .
◿ RAID ۰+۱
▪ نرخ انتقال داده بهینه مزایا و مشخصات : - حداقل به ۴ دستگاه هاردیسک نیاز دارد . - RAID ۰+۱ به عنوان آرایه آینه ای نیز معروٿ است با این تٿاوت که قطعات داده ها یا Segment ها طبق استراتژی RAID۰ ایجاد شده اند . - تحمل خطای این نوع آرایه مانند RAID۵ می باشد . - نرخ انتقال بالا . - بهترین انتخاب برای سیستمهایی که به کارایی بالا بدون توجه به حداکثر اطمینان نیاز داشته باشند . معایب : - RAID ۰+۱ نباید با RAID۱۰ اشتباه گرٿته شود . کوچکترین مشکل در عملکرد یک درایو , آرایه را به مدل RAID۰ تبدیل خواهد کرد . - قیمت بسیار بالا - جابجایی درایوها باید به صورت موازی انجام گیرد . کاربرد : - پردازشهای تصویری و fileserever های عمومی .
▪ نتیجه گیری : همانطور که مشخص شد ، استٿاده ازRAID برای مقاصد معین می باشد و در کاربردهای عادی و روزمره کارایی چشمگیری را به سیستم PC اضاٿه نمی کند . به عنوان مثال امکان استٿاده از CD-ROM و Rewriter روی این کانکتورها وجود ندارد . بنابراین هنگام استٿاده از RAID ابتدا هدٿ و مورد استٿاده خود را مشخص کنید سپس RAID مناسب را انتخاب نمایید.

منبع: شبکه رشد
 
 
 
 |+| نوشته شده در  چهارشنبه بیست و نهم اسفند 1386ساعت 8:59 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

 كلاسترينگ (3)

در اين مقاله ساير الگوريتمهاي كلاسترينگ توضيح داده شده اند

K-means clustering:


K- Means ،يکي از ساده ترين الگوريتم هاي يادگيري بدون نظارت است که مسائل کلاسترينگ معروف را حل مي کند. اين الگوريتم از يک شيوه ساده براي کلاسيفاي کردن يک مجموعه داده در يک تعداد از پيش مشخص شده (k) کلاستر،استفاده مي کند.ايده اصلي تعريف k مرکز براي هر يک از کلاستر ها مي باشد . اين مراکز بايستي با دقت زياد انتخاب شوند ، زيرا مراکز مختلف ، نتايج مختلف را به وجود مي آورند.
بنابراين بهترين انتخاب قرار دان آنها (مراکز) در فاصله هر چه بيشتر از يکديگر مي باشد . قدم بعدي تخصيص هر الگو به نزديک ترين مرکز مي باشد. وقتي همه ي نقاط به مراکز موجود تخصيص داده شدند، مرحله اول تکميل شده است و يک گروه بندي اوليه انجام شده است. در اين مرحه نياز داريم که k مرکز جديد براي کلاستر هاي مرحله قبل محاسبه کنيم. بعد از تعيين k مرکز جديد ،مجدداً داده ها را به مراکز مناسب تخصيص مي دهيم.
اين مراحل را آنقدر تکرار مي کنيم که ديگر k مرکز ،جابجا نشوند.
اين الگوريتم تلاش مي کند که يک تابع هدف (Objective Function) را که تابع  Squared error مي باشد ، مينيمم کند: 
 

اين الگوريتم از مراحل زير تشکيل شده است:
1- مشخص کردن مراکز اين نقاط معرفي کنند مراکز گروه هاي اوليه مي باشند.
2- تخصيص هر الگو به گروهي که نزديکترين مرکز به الگوي مربوطه را دارد.
3- وقتي که تمام الگو ها تخصيص داده شدند،موقعيت k مرکز دوباره محاسبه مي شود.
4- مراحل 2 و 3 آنقدر تکرار مي شوند تا مراکز ديگر جابجا نشوند.
اگر چه ثابت شده است که الگوريتم هميشه پايان ميپذيرد،الگوريتم k-mean ،لزوما جواب بهينه را پيدا نمي کند. اين الگوريتم داراي حساسيت زيادي به مراکز کلاستر اوليه است که به صورت تصادفي انتخاب مي شوند.براي کاهش اين تاثير مي توان الگوريتم را چندين بار اجرا کرد.
k-means ، يک الگوريتم ساده است که براي بسياري از کاربردها مناسب مي باشد.

Fuzzy C-means Clustering:


FCM ،يک روش کلاسترينگ است که اجازه مي دهد يک الگو به دو يا چند کلاستر تعلق داشته باشد.اين روش اغلب در باز شناسي الگو مورد استفاده قرارمي گيرد .

 منبع : http://www.30sharp.com

 

 |+| نوشته شده در  سه شنبه بیست و هشتم اسفند 1386ساعت 5:57 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

 الگوریتم کلاسترینگ (2)

در این مقاله به توضیح الگوریتم کلاسترینگ سلسله مراتبی پرداخته ایم.

کلاسترينگ سلسله مراتبي (Hierarchical Clustering)


با در دست داشتن N نمونه داده براي کلاستر شدن و يک ماتريس فاصله يا شباهت به ابعاد N*N ، پروسه اصلي کلاستريگ سلسله مراتبي به صورت زير ميباشد :

1. با تخصيص هر نمونه به يک کلاستر شروع کنيد . يعني اگر N نمونه داشته باشيم ، N کلاستر داريم که هر يک داراي يک نمونه مي باشند . فاصله بين کلاستر ها همان فاصله بين کلاستر هاي آنهاست .

2. دو کلاستري را که نزديک تر هستند پيدا کنيد و آنها را ادغام کنيد . حالا يک کلاستر کمتر داريم .

3. فاصله کلاستر جديد را با هر يک از کلاسترهاي قديمي محاسبه کنيد .

4. مراحل 2 و3 را آنقدر تکرار کنيد که همه نمونه ها در يک کلاستر به اندازه N قرار بگيرند

مرحله 3 مي تواند به روش هاي مختلفي انجام گيرد که کلاستريگ single-linkage ، complete-linkage و Average-linkage را مشخص مي کند .
در کلاستريگ single-linkage (که روش connectedness يا minimum هم ناميده مي شود( ، فاصله يک کلاستر از کلاستر ديگر را کوتاهترين فاصله هر عضو از کلاستر اول تا هر عضو از کلاستر دوم در نظر مي گيرند .
اگر داده ها شامل شباهت باشند ، شباهت يک کلاستر تا کلاستر ديگر را برابر بيشترين شباهت هر عضو از کلاستر اول تا هر عضو از کلاستر دوم در نظر مي گيرند .
در کلاستريگ complete-linkage (که روش diameter يا maximum هم ناميده مي شود(، فاصله يک کلاستر از کلاستر ديگر را بزرگترين فاصله هر عضو از کلاستر اول تا هر عضو از کلاستر دوم در نظر مي گيرند .
در کلاستريگ average-linkage ، فاصله يک کلاستر از کلاستر ديگر را ميانگين فاصله هر عضو از کلاستر اول تا هر عضو از کلاستر دوم در نظر مي گيرند .

کلاستريگ سلسله مراتبي ، agglomerative يا متراکم شونده نيز ناميده مي شود ، زيرا کلاستر ها را به تدريج ادغام مي کند .کلاسترينگ تقسيم کننده يا divisive هم وجود دارد که به صورت عکس عمل مي کند ، به اين صورت که ابتدا همه اشياء را در يک کلاستر قرار مي دهد و به تدريج آن را به قطعه هاي کوچکتر تقسيم مي کند.
البته اين نوع کلاستريگ به ندرت مورد استفاده قرار مي گيرد .

الگوريم کلاسترينگ single-linkage :


اين الگوريم agglomerative است و زمانيکه کلاستر ها براي تشکيل کلاستر هاي جديد ، ادغام مي شوند ، سطرها و ستون هاي مربوط به آنها را در ماتريس مجاورت پاک مي کند .

ماتريس مجاورت به ابعاد N*N ، D = [d(i,j)] را در نظر بگيريد . به کلاستر ها اعداد 0 و 1 و ... و n-1 ، تخصطص داده مي شود و  L(k) ، سطح k امين کلاسترينگ است . کلاستري با شماره m به صورت (m) نمايش داده مي شود و مجاورت بين کلاسترهاي (r) و (s) به صورت d[(r) , (s)] نمايش داده مي شود .

الگوريتم شامل مراحل زير است :

1. با کلاسترينگ با سطح L(0)=0 و m=0 شروع کنيد .
2. بي شباهت ترين جفت از کلاستر ها را پيدا کنيد . ((r),(s)) :
D[(r),(s)] = min d[(i),(j)]
مينيمم بين همه جفت کلاسترها در نظر گرفته مي شود .
3.m=m+1   قرار دهيد . کلاستر هاي (r) و (s) را ادغام کنيد تا تا کلاستريگ بعدي را تشکيل دهد . سطح کلاستريگ را به اين صورت تنظيم کنيد :
L(m) = d[(r),(s)]
4.  ماتريس مجاورت (D) را update کنيد . به اين ترتيب که سطرها و ستون هاي مربوط به کلاسترهاي(r) و (s) را حذف کنيد و يک سطر و ستون جديد براي کلاستري که تازه تشکيل شده ايجاد کنيد .
مجاورت بين کلاستر جديد (r,s) و کلاستر هاي قديمي k به اين ترتيب محاسبه مي شود:
d [(k), (r,s)] = min d[(k),(r)], d[(k),(s)]
5. اگر تمام اشياء در يک کلاستر قرار گرفتند متوقف مي شويم ، در غير اين صورت به مرحله 2 باز مي گرديم . 

يک مثال :
به عنوان مثال يک کلاسترينگ از فواصل بين يک سري از شهر هاي ايتاليايي که بر حسب کيلومتر بيان شده اند را بررسي مي کنيم . روش استفاده شده  ، single-linkage مي باشد .
ماتريس فاصله که ورودي مي باشد به صورت زير است : (براي همه کلاستر ها L=0 مي باشد .)

نزديکترين شهرها MI و TO هستند ، که به فاصله 138 کيلومتر مي باشند . آنها در يک کلاستر به نام MI/TO ادغام مي شوند . سطح کلاستر جديد L(MI/TO) = 138 و m=1 مي باشد .
مي توانيم فاصله اين شيء ترکيبي را از همه اشياء ديگر محاسبه کنيم . در کلاسترينگ single-linkage ، قانون اين است که فاصله شيء ترکيبي تا ساير اشياء ، برابر کوتاهترين فاصله از هر عضو از کلاستر تا شيء خارجي مي باشد . بنابراين فاصله MI/TO تا RM ، 564 انتخاب مي شود که فاصله از MI تا RM مي باشد.بعد از ادغام MI و TO ، خواهيم داشت :


min d(i,j) = d(NA,RM) = 219 =>    
NA وRM در کلاستر جديدي به نام NA/RM ادغام مي شوند .

L(NA/RM) = 219
m = 2


min d(i,j) = d(BA,NA/RM) = 255 =>
BA و NA/RM در کلاستر جديدي به نام BA/ NA/RM  ادغام مي شوند .
L(BA/NA/RM) = 255
m = 3


min d(i,j) = d(BA/NA/RM,FI) = 268 =>
BA/NA/RM و FI در کلاستر جديدي به نام BA/FI/NA/RM  ادغام مي شوند .
L(BA/FI/NA/RM) = 268
m = 4
 

نهايتاً دو کلاستر باقيمانده را در سطح 295 ادغام مي کنيم .
پروسه انجام شده به صورت خلاصه در ساختار سلسله مراتبي درخت زير نمايش داده شده است .

مشکلات :

نقاط ضعف اصلي روش هاي کلاسترينگ agglomerative عبارتند از :
? پيچيدگي زماني ، حداقل ( O(n است که n ، تعداد کل اشياء مي باشد .
? مراحلي که قبلاً انجام شده ، قابل بازگشت نيستند و نمي توان تأثير قدم هاي قبلي را undo کرد .

 منبع : http://www.30sharp.com

 

 |+| نوشته شده در  سه شنبه بیست و هشتم اسفند 1386ساعت 5:54 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

 الگوریتم های کلاسترینگ (1)

در این مقاله به توضیح یکی از الگوریتمهای کلاسترینگ (مدل ترتیبی) پرداخته ایم.

در اين قسمت انواع الگوريتم هاي کلاسترينگ را بررسي مي کنيم. الگوريتم هاي کلاسترينگ را مي توان به دسته هاي اصلي زير تقسيم بندي کرد:


• الگوريتم هاي کلاسترينگ ترتيبي
• الگوريتم هاي کلاسترينگ سلسله مراتبي
• الگوريتم هاي کلا سترينگ مبتني بر بهينه سازي تابع هزينه


 

الگوريتم هاي کلاسترينگ ترتيبي


اين الگوريتم ها در ابتدا يک کلاستر تک توليد مي کنند و روش هاي سريع و واضحي مي باشند. در اکثر آنها بردارهاي خصوصيات به تعداد دفعات کمي و يا تنها يک بار به الگوريتم داده مي شوند. در اينجا بطور خلاصه الگوريتم ترتيبي پايه را توضيح مي دهيم. در اين نمونه تمام بردارها يک بار به الگوريتم ارائه مي شوند. تعداد دسته ها در اين مورد از قبل مشخص نيستند. در واقع کلاسترهاي جديد در حين اجراي برنامه ايجاد مي شوند. اگر   به معناي فاصله (عدم شباهت) بين بردار خصوصيت و کلاستر  باشد، هر بردار  بسته به فاصله از کلاستر، به کلاسترهاي موجود و يا به کلاستر جديد نسبت داده مي شود. در زير الگوريتم کلاسترينگ ترتيبي پايه آورده شده است.


در الگوريتم هاي کلاسترينگ ترتيبي نتيجه نهايي به ترتيبي که بردارها به الگوريتم ارائه مي شوند بستگي دارد.

درمقالات بعدي ساير الگوريتمهاي کلاسترينگ را توضيح خواهيم داد.

منبع : http://www.30sharp.com

 

 |+| نوشته شده در  سه شنبه بیست و هشتم اسفند 1386ساعت 5:51 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

 مفاهیم اولیه کلاسترینگ

در این  مقاله توضیح مختصری از مفاهیم پایه کلاسترینگ ارائه شده است.

معرفي


کلاسترينگ به معناي کلاس بندي بدون نظارت است که کلاسها از قبل تعيين شده نيستند و يا به عبارت ديگر برچسب کلاس الگوهاي آموزشي در دسترس نيست. بنابراين اکنون هدف اصلي ما سازماندهي الگوها به گروهاي sensible است. که به ما اجازه مي دهند که شباهت و تفاوت بين الگوها را کشف کنيم و نتايج مفيد را درباره آنها استنتاج نماييم. اين ايده در زمينه هاي مختلف ديده مي شود. مثال زير از زيست شناسي الهام گرفته شده است و صورت مسئله را براي ما واضح مي سازد. به حيوانات زير توجه کنيد: گوسفند،سگ و گربه (پستاندار)، گنجشک و بلبل (پرنده)، ماهي قرمز، شاه ماهي (ماهي)، افعي و  مارمولک(خزنده) و غوک(دوزيست). به منظور مرتب کردن اين حيوانات در داخل کلاسترها نياز داريم که يک ملاک دسته بندي تعريف کنيم. اگر وجود شش ها را بررسي کنيم، ماهي قرمز و شاه ماهي در يک کلاستر و بقيه در يک کلاستر ديگر قرار مي گيرند(شکل(الف)). اگر ملاک دسته بندي را محيطي که حيوانات زندگي مي کنند قرار دهيم آنگاه گوسفند، سگ، گربه، گنجشک، بلبل،افعي و مارمولک (حيواناتي که بيرون آب زندگي مي کنند) کلاستر اول و ماهي قرمز و شاه ماهي (حيواناتي که در آب زندگي مي کنند) کلاستر دوم را تشکيل مي دهند و غوک که مي تواند هم در آب و هم در خشکي زندگي کند کلاستر سوم را تشکيل مي دهد (شکل (ب)). اگر وجود ستون فقرات را ملاک دسته بندي باشد تمام حيوانات در يک دسته قرار مي گيرند. ما مي توانيم از ملاک دسته بندي مرکب استفاده کنيم. براي مثال اگر ملاک دسته بندي نحوه بدنيا آوردن فرزندان و وجود شش ها باشد ما سه نوع کلاستر داريم که در شکل (ج) آورده شده است.

 

 اين مثال نشان مي دهد که فرايند نسبت دادن اشيا به کلاسترها ممکن است به نتايج بسيار متفاوتي منجر شود. کلاسترينگ يکي از ابتدايي ترين فعاليت هاي ذهني است که براي کنترل  کردن مقادير زياد اطلاعات دريافت شده هر روزي استفاده مي شود. پردازش هر بخش از اطلاعات به عنوان يک موجوديت تک امکان پذير نيست. بنابراين انسانها به دسته بندي موجوديت ها (حوادث، انسانها، اشيا و غيره ) در کلاسترها روي مي آورند. هر کلاستر توسط خصوصيات مشترک موجوديت هايي که درون آن قرار مي گيرند تعريف مي شود. کلاستر، يک مجموعه از داده هاست بطوريکه:

·        داده هاي موجود در يک کلاستر شبيه يکديگر هستند.

·        داده هاي موجود در کلاسترهاي مختلف به يکديگر شبيه نيستند.   

    انواع کلاسترها


کلاستر ها انواع مختلفي دارند که در به زير تعدادي از آنها اشاره شده است:

- كلاسترهاي بخوبي جدا شده 

مجموعه نقاط داخل اين كلاستر نسبت به نقاط خارج آن به يكديگر بسيار شبيهند. 

- كلاسترهاي مبتني به مركز:

مجموعه نقاط داخل اين كلاستر به مركز كلاستر نسبت به مراكز كلاسترهاي ديگر بسيار نزديكترند.

- كلاسترهاي مبتني بر مجاورت و نزديكي:

مجموعه نقاط داخل اين كلاستر به يك يا تعداد بيشتري از نقاط داخل كلاستر نسبت به نقاط خارج آن شبيهند.

  گامهاي اساسي در انجام کلاسترينگ:


به منظور ايجاد کلاستر ها (انجام عمل کلاسترينگ) اعمال زير بايد انجام شوند:

1.      انتخاب ويژگي: خصوصيات بايد به طور مناسبي انتخاب شوند تا اکثر اطلاعات را کدگذاري کنند.

2.      مقياس نزديکي: معياري است که ميزان شباهت و يا عدم شباهت دو بردار خصوصيت را مشخص مي کند. تمام خصوصيات انتخاب شده بايد در محاسبه اين معيار شرکت کنند و هيچ خصوصيتي نبايد بر بقيه غلبه کند. به عنوان مثال فاصله اقليدسي يا فاصله منهتن.

3.      ملاک دسته بندي: که در قسمتهاي بالا در مورد آن صحبت  شده است.

4.      الگوريتم کلاسترينگ: پس از اينکه ملاک دسته بندي و مقياس نزديکي انتخاب شدند در اين گام يک الگوريتم خاص جهت روشن کردن ساختار دسته بندي مجموعه داده انتخاب مي شود.

5.      اعتبار نتايج: زمانيکه نتايج کلاسترينگ بدست آمد بايد صحت و درستي آنها بررسي شوند. اين کار معمولا بوسيله تست هاي مناسبي انجام مي شود.

 

درمقاله بعدي از انواع الگوريتمهاي کلاسترينگ صحبت خواهيم کرد.

 منبع : http://www.30sharp.com

 

 |+| نوشته شده در  سه شنبه بیست و هشتم اسفند 1386ساعت 5:46 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

کلاسترینگ در ویندوز 2003

کلاسترینگ معنیش همون دسته بندی میشه.

با کلاسترینگ سرور ها میشه بارهای برروی یک سرور رو بین چندین سرور تقسیم کرد (NLB=Netwrok Load Balancing)
در صورت کلاستر کردن یک بالانس کلی بین سرور ها برقرار میشه.

این دسته بندی می تونه به روشهای متفاوتی انجام بشه.

مثلا" فکر کنید یک سایت دارید که هزاران نفر هر روز میان و به اون سر میزنن و ازاش بازدید میکنن و به همین خاطر بار زیادی رو سرورتون هست. شما می تونید با استفاده از چند سرور این بار رو بینشون تقسیم کنید. تنظیمات کلی دسته بندی سرورها رو انجام میدید و بعد از اون هر زمان که کاربرها به سرور شما میان هر دفعه کاربر به یک سرور مسیر داده میشه.
مثل round robin که در DNS هست.(هر دفعه dns یک ipدیگه رو بده)

نوع دیگر دسته بندی برای نرم افزارها و یا دیتابیس های تجاری هست.
شما یک شرکت بزرگ رو مدیریت میکنید و مثلا" نرم افزار و یا دیتابیس X همیشه باید آنلاین باشه و برنامه نویسها و یا کارمندان بخش حسابداریتون از اون دیتا استفاده کنن. شما باید چند سرور خریداری کنید یک هارد اشتراک بگذاریدو تنظیمات RAID و اتصالات دیگر رو روش انجام بدیدو بین سرورهاتون به اشتراک بگذارید.

حالا اگر یکی از سرور های شما ناگهان قطع بشه یا مشگلی پیش بیاد سریعا" سرور بعدی می تونه کار اون یکی سرور رو انجام بده.
این نوع کلاسترینگ یا دسته بندی رو Server Clusters میگن که فقط در ویندوز سرور 2003 ent و datacent فعال هست در صورتی که NLB در تمام نسخه های وین سرور فعال هست.

اگر دوست داشتیددرباره تنظیمات کلاسترها بدونید اون مقاله های آنلاین رو بخونید و به کتابهای مرجع ویندوز سرور مراجعه کنید تنظیمات زیادی داره.
به اینجا هم می تونید مراجعه کنید:
http://www.windowscluster.com

اگر می خواهید تنظیمات NLB رو ببینید می تونید به تنظیمات کارت شبکه خودتون مراجعه کنید و در اونجااز NLB یک properties بگیرید.

From its roots in the Wolfpack Project at Microsoft, clustering has matured into an
important part of any enterprise Windows implementation. This chapter examines
Microsoft’s latest cluster offerings and describes how they can be used to scale and
extend your Windows Server 2003 network.
Acluster can most easily be defined as a group of individual servers that work together
as a single system. Software and clients see the cluster as a single entity, and the cluster is
managed as a single unit. Clustering is used to ensure high availability for mission-critical
applications, manageability for 24/7 implementations, and scalability for large enterprise
solutions. Two clustering technologies are available in MicrosoftWindows Server 2003:

Network Load Balancing (NLB) Primarily intended to balance incoming
TCP/IP traffic. NLB is commonly used for web servers.

 Server Clusters Implemented to provide failover services among the clustered
computers. The Cluster service is commonly used for database applications.
You can’t use both on the same server, but you can use the two cluster solutions
together to gain complementary functions—for example, making a database
application available to web site visitors

درباره کلاسترینک سرور های ویندوز می تونید اینجا رو ببینید:

http://www.microsoft.com/windowsserv...m/default.mspx
اطلاعات بیشتر:
http://www.microsoft.com/windows2000...ustersteps.asp

مبحث طولانی هست!

در لینوکس هم اگر redhat دارین می تونید از :
Red Hat Cluster Suite

http://www.redhat.com/en_us/USA/home.../clustersuite
استفاده کنید.
 
 
 |+| نوشته شده در  سه شنبه بیست و هشتم اسفند 1386ساعت 5:11 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

استفاده از Thread ها در دلفی



اساس کار ویندوز در اجرای برنامه ها بر روی Thread ها است ، هنگامی که برنامه ای اجرا می شود ، کلیه کدها و فایلهای منبع ( Resource ) آن در یک یا چند Thread قرار می گیرند ، درواقع هرProcess در ویندوز دارای یک یا چند Thread است که اطلاعات Process درآنها قرار دارند و بر روی حافظه موقت بارگذاری شده اند ... ، برنامه ها میتوانند در زمان اجرای خود Thread هایی ساخته و سپس آنها را آزاد نمایند ، کار یک Process زمانی به پایان می رسد که تمام ، Thread های آزاد شده باشند ، در غیر این صورت آن Process بسته نخواهد شد ، پس باید در آزادسازی Thread ها دقت زیادی داشت ...

ساخت Thread و استفاده از آن در برنامه :
در دلفی کلاسی به نام TThread قرار دارد که امکان استفاده از Thread ها را فراهم می سازد ...
برای استفاده از یک Thread ابتدا باید یک نسخه از کلاس TThread را Create کرده و سپس از آن استفاده نمایید
برای ساخت یک Thread به صورت زیر عمل می کنیم :

کد:
Type
 MyThread = Class(TThread)
  private
    …
  protected
    ...
 end;

در کد بالا یک نوع از TThread را ساختیم ...
در یک Thread میتوانید Procedure ها و توابعی را قرار داده و از آنها استفاده نمایید ، توجه داشته باشید که برای فراخوانی توابع و متد ها باید از روش Synchronization ( همزمان سازی ) استفاده نمایید ، شاید با دیدن این کلمات احساس کنید که کار سختی در پیش دارید ، اما اصلا این طور نیست ، این کار با اجرای یک تابع ساده امکان پذیر است که در ادامه توضیح خواهیم داد ...
Thread ها یک Event اصلی به نام OnExecute دارند که مربوط به زمان اجرا شدن آنها است ، تمام کار Thread ها در همین Event انجام می شود ، کدی که در این رویداد می نویسید از زمان اجرا شدن Thread تا زمان Terminate شدن آن اجرا خواهد شد.
نمی توان در یک Thread به صورت مستقیم با اشیای فرم ارتباط داشت ، چنین درخواستهایی از Thread باعث متوقف شدن کار آن خواهد شد و نتیجه مطلوبی نخواهید گرفت ... ، برای دسترسی به اشیاء باید از Procedure های جدا و Synchronize استفاده نمایید تا اختلالی در کار Thread به وجود نیاید ...
ابتدا باید توابع و متد ها را در یک Thread تعریف کرده و کد مورد نظر را در آن بنویسیم ، سپس با تابع Synchronize به روش زیر می توانیم آن را اجرا نماییم :

کد:
Synchronize( My Procedure );

طریقه ایجاد توابع و Procedure ها در Thread مانند سایر کلاسها ( مثلا TForm ) است ، برای مثال فرض کنید متدی داریم که در آن عمل Progress کردن یک ProgressBar را انجام می دهیم ، میتوانیم به صورت زیر این متد را تعریف نماییم :

کد:
Type
 MyThread = Class(TThread)
  private
   procedure doProgress;
  end;

Implementation

procedure doProgress;
begin
  Form1.ProgressBar1.Progress;
end;

ساخت و استفاده از Thread :
در بالا نحوه تعریف یک Thread را توضیح دادیم ، برای استفاده از آن باید یک متغیر با نام Thread تعریف شده تعریف نماییم و از آن استفاده کنیم ...
نکته دیگر این که متد Create برای Thread ها یک پارامتر به نام Suspended دارد که از نوع Boolean می باشد و به صورت پیشفرض دارای مقدار False است ...
این پارامتر مشخص میکند که آیا Thread در حالت متوقف ساخته شود یا اینگه بعد از ساخته شدن بلافاصله در حالت اجرا قرار گیرد ( Thread بعد از ساخته شدن ، متد Execute اش اجرا خواهد شد ، با True کردن این پارامتر ، متد Execute را متوقف کرده و از اجرا شدن کدها جلوگیری می نماییم ) ، بعد از اجرای Thread ممکن است نیاز باشد که برخی از خصوصیات آن را تغییر دهیم ، پس باید به این پارامتر مقدار True دهیم تا Thread ما بعد از ساخته شدن در حالت اجرا نباشد و امکان تغییر خاصیتهای آن وجود داشته باشد ...
برای مثال بهتر است که خاصیت FreeOnTerminate مربوط به Thread ساخته شده را True نماییم تا هنگام فراخوانی متد Terminate برای پایان کار Thread‌ ، آن را آزاد کنیم ...
پس کد ما تا اینجا به شکل زیر درخواهد آمد :

کد:
var
 T : MyThread;
begin
 T := MyThread.Create(True);
 T.FreeOnTerminate := True;
 T.Resume;
end;

در کد بالا Thread ما ساخته شده و سپس خاصیت FreeOnTerminate آن True شده و سپس با استفاده از متد Resume به کار خود ادامه می دهد ( از حالت Suspend بیرون می آید ) ...

کد نویسی در رویداد OnExecute :
هر Thread ای که Create می کنید در حالت پیشفرض رویداد OnExecute را دارا می باشد ، برای این که آن را به دلخواه خود تغییر دهید باید آن را دوباره تعریف کنید ، برای تعریف این رویداد باید از قسمت Protection و وا‍ژه Override استفاده نمایید تا رویداد قبلی Thread از بین رفته و رویداد جدیدی که ایجاد می کنید جایگزین شود ، پس کد شما به این صورت خواهد بود :

کد:
type
 MyThread = Class(TThread)
  private
   ...  
  protected
   procedure Execute; override;
  end;

var

implementation

procedure MyThread.Execute;
begin

end;

اجرای Procedure های تعریف شده ( Synchronization ) :
برای فراخوانی Procedure هایی که تعریف کرده اید باید ار تابع Synchronize استفاده نمایید ( در داخل رویداد OnExecute ) ، برای مثال :

کد:
procedure MyThread.Execute;
begin
 Synchronize(doProgress);
end;

تابع Synchronize یک پارامتر دارد که از نوع TThreadMethod است و Procedure ای که در Thread تعریف کردید باید در آن قرار گیرد ...

مدیریت Thread :
برای استفاده از Thread با متدهای آن آشنایی داشته باشید ...
برای متوقف کردن یک Thread باید از متد Suspend استفاده نمایید ، و برای ادامه کار آن باید از متد Resume استفاده کنید :

کد:
MyThread.Suspend;
...
MyThread.Resume;

برای این که بفهمید آیا Thread ما در حالت Suspend است یا خیر میتوانید از خاصیت Suspended استفاده نمایید ، این خاصیت یک مقدار Boolean دارد که مشخص می کند Thread مورد نظر Suspend شده یا خیر :

کد:
var
 isSuspended : Boolean;
begin
 isSuspended := MyThread.Suspended;
end;

اگر می خواهید که کار یک Thread را کاملا متوقف نمایید ، می توانید از متد Stop استفاده کنید ، در این صورت برای اجرای دوباره Thread باید از متد Execute استفاده نمایید :

کد:
MyThread.Stop;
...
MyThread.Execute;

خاصیت Priority :
اگر در محیط ویندوز برنامه Task Manager را اجرا نموده و به قسمت Process بروید لیست Process های در حال اجرا را می بینید ، اگر بر روی هر کدام از این Process ها راست کلیک نمایید گزینه ای به نام Set Priority می بینید که مقادیری مثل High‌ ، Normal یا Low و ... دارد ، Priority مشخص می کند که در زمان الویت بندی اجرای Thread ها در CPU ، کدام یک ارجعیت دارند و به CPU ابتدا باید به درخواست کدام یک از آنها جواب دهد ، هرچه مقدار Priority یک Thread مقدار بالاتری داشته باشد ، الویت بیشتری خواهد داشت و عملیاتش زودتر انجام خواهد شد ...
می توانید برای Threadخود این خاصیت را تنظیم نمایید ، این خاصیت از نوع TThreadPriority می باشد ، در تصویر زیر مقادیری که می توانید به عنوان Priority قرار دهید مشخص شده است :


ThreadID :
این خاصیت شناسه ای برای Thread شما است که هم در زمان ساخت ( در زمان Debug‌ ) و هم در زمان اجرای برنامه می توانید از آن استفاده نمایید ، هنگامی که قصد Debug کردن برنامه خود در محیط دلفی را دارید ، پس از اجرا کردن برنامه اگر از منوی View گزینه Debug Windows و سپس گزینه Threads را انتخاب نمایید ، پنجره ای باز شده و لیستی از Thread های در حال اجرا در برنامه شما را نمایش میدهد که هرکدام از آنها دارای شناسه ای به نام ThreadID هستند ، با داشتن این مقدار می توانید Thread مورد نظر خود را در این پنجره پیدا نمایید ...
این مقدار را می توانید به روش زیر بدست آورید :

کد:
var
 MyThreadID : Cardinal;
begin
 MyThreadID := MyThread.ThreadID;
end;


خروج از Thread و آزاد کردن آن :
رویداد OnTerminate :
Thread یک رویداد دیگر دارد که میتوانید آن را مانند OnExecute تنظیم نمایید و تغییر دهید ، این رویداد زمانی اتفاق می افتد که Thread مورد نظر Terminate‌ شود ، اما متد دیگری به نام DoTerminate وجود دارد که این رویداد را اجرا میکند بدون اینکه Thread مورد نظر Terminate شود ( یا شده باشد ) ، با متد ...

---------

اگر یادتان باشد ،‌ ما در هنگام ساخت Thread مقدار خاصیت FreeOnTerminate‌آن را True کردیم پس اگر آن را Terminate نماییم ، آزاد ( Free ) خواهد شد ، با متد Terminate میتوانید به کار یک Thread پایان دهید :

کد:
MyThread.Terminate;

در برخی موارد ممکن است Thread مورد نظر Terminate نشود ! ، درواقع هنگامی که ما متد Terminate را اجرا می کنیم ، کار عمده ای انجام نمی شود ، بلکه فقط خاصیت Terminated مربوط به Thread بر روی True تنظیم می شود ! ، درواقع این عمل به Thread اعلام میکند که به زودی ممکن است کارش پایان یابد ، باید برای پایان کار Thread‌ ، بعد از اجرا این متد با استفاده از متد Exit ( مربـوط به Thread نیست ) از رویداد OnExecute خارج شد ( دستور Exit در دلفی برای خروج از یک رویه ( تابع یا ... ) به کار می رود ) :

کد:
procedure MyThread.Execute;
begin
 Synchronize(doProgress);
 …
 MyThread.Terminate;
 Exit;
end;

توجه داشته باشید که در قسمتهای مختلف کد باید چک کنید که آیا Terminated مربوط به Thread مقدار True دارد یا خیر و اگر مقدار True داشت با استفاده از دستور Exit از رویداد خارج شوید :

کد:
procedure MyThread.Execute;
begin
 if MyThread.Terminated then
    Exit;
 …
 if MyThread.Terminated then
    Exit;
 …
 MyThread.Terminate;
 Exit;
end;

علاوه بر موارد بالا می توانید از متد WaiteFor استفاده نمایید ، متد WaiteFor تا زمانی که کار Thread‌ به پایان برسد کارش تمام نخواهد شد ، درواقع می توانید کد Exit را بعد از این متد بنویسید تا خیالتان از بابت پایان کار Thread راحت شود ! :

کد:
procedure MyThread.Execute;
begin
 if MyThread.Terminated then
    Exit;
 …
 if MyThread.Terminated then
    Exit;
 …
 MyThread.Terminate;
 MyThread.WaiteFor;
 Exit;
end;



امیدوارم مفید بوده باشه ...

PDF این مقاله رو می تونید از اینجا دانلود کنید ...


منبع : http://barnamenevis.org/forum/showthread.php?t=79463

 

 |+| نوشته شده در  سه شنبه بیست و هشتم اسفند 1386ساعت 11:6 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Multi threading در پیتون

موضوع هایی که می خواهیم در موردشان بحث کنیم:

  • 1. مقدمه
  • 2. نخها و پروسس ها
  • 3. نخها و پیتون
  • 4. ماژول thread
  • 5. ماژول threading

در این موضوع , ما می خوایم راههایی که شما می توانید اجرای موازی و همزمان رو در کد خودتون استفاده کنید و چگونکی استفاده ازبرنامه نویسی Multithread (MT) و ایجاد آن در پیتون. این مقاله مثل تمام مقالات من کامل نیست و من فقط مطالبی که به نظر مهم هستند و به کمکتون می یاد را توضیح می دهم.

  • مقدمه:

قبل از هر چیز باید بدانید که برنامه نویسی چند نخی (Multithread) یکی از قابلیت هایی است که مستقیما به سیستم عامل مربوط می شود یعنی سیستم عامل شما باید از این شیوه پشتیبانی کند (سیستم عامل ویندوز این قابلیت را دارد). هر وقت برنامه ای شروع به اجرا می کند ویندوز یک ( نخ) به ان اختصاص می دهد این Thread در واقع رابط بین برنامه و CPU است . همونطور که می دانید CPU برای اینکه بتواند چند وظیفه را بصورت هم زمان انجام دهد , به هر Thread یک زمان مشخص اختصاص می دهد (با توجه به اولویت Thread). مثلا اگر ما دو Thread در حال اجرا داشته باشیم CPU یک زمان خاصی را به Thread اولی اختصاص می دهد تا کارش را انجام دهد پس از اتمام زمان نوبت به Thread بعدی می رسد و به همین ترتیب...

  • نخ ها و پروسس ها:
  • پروسس چیست:

برنامه های کامپیوتر صرفا اجرا پذیر هستند, باینری (یا طور دیگر ), این برنامه ها روی دیسک قرار دارند. اینها نمی توانند کاری انجام بدهند(به اصطلاح مرده هستند) تا زمانی که داخل حافظه بارگذاری شوند و از سیستم عامل درخواست کنند. پروسس یک برنامه در حال اجرا است. هر پروسس یک ادرس فضا , حافظه و یک پشته داده دارد. سیستم عامل کنترل کننده تمام پروسس های در حال اجرا بر روی سیستم است, و زمان رو میان انها به طور خوب تقسیم می کند. پروسس ها می توانند چند شاخه بشوند یا یک پروسس جدید برای انجام دیگر کارها ایجاد کنند, هر یک از این پروسس های جدید حافظه و پشته داده و... خودشان را دارند ولی نمی توانند به طور عمومی از اطلاعات سهمی داشته باشند مگر اینکه از IPC ها استفاده کنند.

  • نخ چیست:

Thread ها یا نخ ها به قطعه کدهایی گفته می شود که به صورت موازی و همزمان با هم اجرا می شوند و به شما این امکان را می دهند برنامه هایی را طراحی و پیاده سازی کنید که می توانند چندین کار را با هم انجام دهند به طور مثال : جستجوی چند فایل یا گرفتن اطلاعات از طریق شبکه و ذخیره انها در دیسک. البته اصولا نخ ها به صورت همزمان اجرا نمی شوند بلکه CPU براساس تنظیم زمان خود یک زمان غیر قابل درک برای انسان را در نظر می گیرد سپس در این مدت زمان یک کار را انجام داده و پس از اتمام این زمان به سراغ کار بعدی می رود به اصطلاح در کارهای خود سوییچ می کند. به این مدت زمان کوتاه اصطلاحا Time Slice یا پرش زمان می گویند.

  • نخ ها و پیتون:
  • دسترسی به نخها در پیتون:

پیتون از برنامه نویسی چندنخی پشتیبانی می کند. پس باید سیستم عامل در حال اچرا ان را پشتیبانی کند بیشتر ورژنهای Unix , Solaris , Linux و Windows از این قابلیت پشتیبانی می کنند و فکر کنم مکینتاش از این قابلیت برخوردار نیست.

  • ماژولهای نخ کشی پیتون:

پیتون چند ماژول برای پشتیبانی ازبرنامه نویسی MT شامل thread , threading و Queue را اماده دارد. ماژولهای thread و threading به برنامه نویس اجازه ساختن و اداره نخ را می دهند. ماژول thread برای کار با نخ به صورت ساده و پایه ای است ولی ماژول threading خصوصیات سطح بالا و کاملی از برنامه نویسی نخ در اختیار ما قرار می دهد. ماژول Queue به کاربر اجازه ساختن صف داده را می دهد. این ماژول در محدوده بحث ما نیست و شاید در مقاله دیگری در مورد ان بحث کردیم.

  • ماژول thread :

این ماژول همان طور که گفته شد امکانات کم و سطح پایینی برای کار با چندین نخ در اختیار ما قرار می دهد. تابع اصلی و کلیدی این ماژول start_new_thread() است این تابع خیلی به apply() شباهت دارد.من در اینجا ابتدا چند تا از متدهای این تابع را توضیح می دهم.

1.start_new_thread(function, args, kwargs = None)

شروع یک نخ جدید و عددی که مشخص کننده هویت ان است نخ با گرفتن یک لیست از ارگومانها (که باید در داخل tuple باشند) تابع را اجرا می کند.ارگومان kwargs اختیاری است که با دیکشنری از کلمات کلیدی ارگومانها مشخص می شود. وقتی تابع اجرا شد و بازگشتی ان مشخص شد نخ از کار می افتد.


2.interrupt_main()

ایجاد یک KeyboardInterrupt در نخ اصلی , یک subthread می تواند می تواند از وقفه ایجاد شده در نخ اصلی استفاده کند.

3.exit()

باعث اجرای استثنای SystemExit می شود. اگر نتوانست پیدا کند باعث توقف نخ می شود.

4.allocate_lock()

برگرداندن یک شی lock جدید . متدهای قفل ها در زیر امده اند.

5.get_ident()

عدد مشخص کننده هویت نخ در حال جاری را برمی گرداند این عدد یک عدد غیر صفر است. این اعداد که مشخص کننده هویت نخ هستند هیچ گاه بعد از استفاده نخ و خارج کردن ان دور انداخته نمی شوند و می توانند به نخ هایی که بعدا ایجاد می شوند نسبت داده شوند.(مثل استفاده از دایل اپ برای کانکت شدن به اینترنت که هر دفعه یک ای پی به ما داده می شود و بعد از قطع ارتباط این ای پی به شخص دیگری که به اینترنت وصل می شود داده می شود...)


[ویرایش] متدهای مطلق به شی Lock :

1.acguire([waitflag])

برای بدست اوردن و جستجوی lock های قطعی است.

2.locked()

اگر یک lock بدست اورد 1 در غیر این صورت نتیجه 0 است

3.release()

برای ازاد کردن lock



برای فهمیدن و درک چنین بحث هایی در برنامه نویسی باید خیلی تمرین کرد و مثال های مختلفی را تجزیه و تحلیل کرد. مثال پایین یک مثال خوب و ساده برای دیدن نتیجه کار بعضی از توابع و متدها است. زیاد هم سخت نیست کمی دقت کنید متوجه می شوید.


01    #Using thread and Locks
02
03    import thread
04    from time import sleep, time, ctime
05    loops = [4, 2]
06    def loop(nloop, nsec, lock):
07        print 'start loop', nloop, 'at:', ctime(time())
08        sleep(nsec)
09        print 'loop', nloop, 'done at:', ctime(time())
10        lock.release()
11    def main():
12        print 'starting threads…'
13        locks = []
14        nloops = range(len(loops))
15
16        for I in nloops:
17            lock = thread.allocate_lock()
18            lock.acquire()
19            locks.append(lock)
20       
21        for I in nloops: 
22            thread.start_new_thread(loop, \
23                (I, loops[i], locks[i])) 
24
25        for I in nloops:
26            while locks[i].locked(): pass
27
28        print 'all DONE at:', ctime(time())
29    
30    if __name__ == '__main__':
31        main()
32


  • ماژول threading :

اگر شما قادر به کار کردن با ماژول thread باشید و درکی از آن داشته باشید از این ماژول نیز می توانید بدون توضیح استفاده کنید البته این ماژول امکانات فراوانی دارد که در ماژول thread وجود ندارد ولی به هر حال یاد گیری آنها ساده است. چون توضیح این ماژول به طور کامل خیلی وقت می برد و باعث طولانی شدن مطالب و شاید سردرگمی شما شوند.

در حال تکمیل توسط pyth0n

منبع:

  • 1.راهنمای خود پیتون
  • 2.کتاب Core Python
 
 
 
 |+| نوشته شده در  شنبه بیست و پنجم اسفند 1386ساعت 8:16 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
از  وبلاگ دانشجویان گروه کامپیوتر موسسه آموزش عالی سلمان

خلاصه شده از وبلاگ زیر

آدرس : http://salmancg.blogfa.com/cat-6.aspx

سلام، بالاخره تتونستم دو پروژه مربوط به گرید رو آپلود کنم و براتون بزارم. فایل اولی رو قبلا برا دوستان گذاشته بودمکه مربوط به درس شیوه ارائه بود. فایل دوم بطور دقیق تر معماری گرید رو مورد بررسی قرار میده.

فایل اول مربوط به آشنایی مقدماتی با تکنولوژی گرید هستش.

آشنایی با گرید [ 3 mb ]

فایل دوم مربوط به بررسی دقیق معماری گرید هستش، این فایل ترجمه Part دوم کتاب Introduction to Grid  از شرکت IBM هستش که کار ترجمه رو (به ترتیب حروف الفبا) من و خانم اسماعیل زاده و آقای بنائی و خانم طیرانی و آقای فاتحی انجام دادیم.

بررسی معماری گرید [ 8  mb]

اینجا از جمال عزیز برا پیگیریهاش و بیژن گل برا فعالیتاش در زمینه اطلاع رسانی، تشکر می کنم.

فایل ppt پروژه شیوه ارائه (Grid Technology)
دوستان عزیزم فایل PowerPoint ارائه ام که در مورد تکنولوژی گرید بود رو می تونید از لینک زیر دانلود کنید. امیدوارم براتون مفید باشه.

دریافت فایل Power Point

 از لینک زیر هم می تونید یه کتاب خیلی معتبر در زمینه Grid دانلود کنید. این کتاب از انتشارات شرکت IBM هستش.

دریافت Red Book

 

 |+| نوشته شده در  پنجشنبه بیست و سوم اسفند 1386ساعت 2:17 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
Clustering کردن Apache و MySQL

برای Clustering کردن، بستگی داره که شما در چه سطحی مایل به انجام این قضیه باشید. مثلاً میتونید یک نرم افزار رو Clustering کنید که برای این کار احتمالاً باید از Platform هایی مثل Java استفاده کنید که خود دارای امکانات Application Clustering هستند.
راه دیگه ای که داره توسط ما هم از اون استفاده میشه، Cluster کردن Apache و MySQL بر روی چندین سرور هست. برای این کار، باید DNS سروری داشته باشید که بر اساس Load سرور ها، IP های مختلف رو به کاربر در هنگام DNS Querry بده، بدین صورت کاربر شماره یک ، آدرس IP اول شما رو از DNS Server میگیره و کاربر شما دو هم آدرس شماره دوم رو و الی آخر

کاربر یک اتصال به سرور Apache شماره یک شما به IP مثلاً : xxx.xxx.xxx.1
کاربر دو اتصال به سرور Apache شماره دو شما به IP مثلاً : xxx.xxx.xxx.2
کاربر سه اتصال به سرور Apache شماره سه شما به IP مثلاً : xxx.xxx.xxx.3
....

حالا شما باید دارای چندین نسخه از سایتتون بر روی سرور های Apache تون باشید که برای این کار از نرم افزار های محتلفی برای Sync کردن اطلاعات می تونید استفاده کنید. در مورد MySQL یا SQL Server هم دقیقاً همین طور هست یعنی تعدادی سرور MySQL یا SQL هست که Cluster هستن. نرم افزار MySQL خودش از طریق MySQL Clustering از این امکان پشتیبانی می کنه، بنابر این شما می تونید تعداد نامحدودی سرور MySQL داشته باشید که Sync هستن و به صورت Cluster با هم کار می کنند.
این نوع کلاستر کاملاً Fail Safe هست، چرا که در صورت داون بودن هر کدم از سرور ها، سرور دیگری پاسخگوی کاربران خواهد بود.

منبع : وب سایت سرورز24
 
 |+| نوشته شده در  پنجشنبه بیست و سوم اسفند 1386ساعت 11:6 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Are You Looking for a Grid Job?

distributed.jpgMy team is looking for some folks to join up and help us bring grid technology to our customers. Drop me a line!

 

 

 

 

 

منبع : http://gridgurus.typepad.com

 

 |+| نوشته شده در  پنجشنبه بیست و سوم اسفند 1386ساعت 9:52 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

All of Your Data in One Basket

disk_000000967564XSmall.jpg

I once worked with this person who wrote programs that only wrote to a single file. Once this program was put into the grid environment it would routinely create files that were hundreds of gigabytes in size.  Nobody considered this to be a problem because the space was available and the SAN not only supported files of that size, but also performed amazingly well considering the expectations. While this simplifies the code and data management, there are a number of reasons why this is not a good practice.

  • You don’t always need all of the output data at once. Moving a piece from the grid to your desktop for testing would not even be a consideration.
  • The amount of computation-time needed to recreate a huge file is significant.
  • There is no easy way to get to use multiple threads for writing and/or reading data.
  • Moving files across the network takes a lot more time.
  • A file can only be opened in read-write mode by one process at a time.  One large file is going to block a lot more modification operations than several single files.
  • Backing the file up is remarkably more difficult.  You cannot just burn it to a DVD so it has to be sent to disk or to tape.  If you need to restore a file it can take a significant amount of time.
  • Your file is going to be severely fragmented on the physical drives and therefore will cause increased seek times.
  • You can no longer use memory-mapped files.
  • Performing a checksum on a large file takes forever.
  • Finally, if you had properly distributed the job across the Grid, you should not have such large files!!!

Why would anybody do such a thing?  All your data are belong to us?

منبع : http://gridgurus.typepad.com

 

 |+| نوشته شده در  پنجشنبه بیست و سوم اسفند 1386ساعت 9:13 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
ابر رایانه


ابر رایانه وسیله ای برای تبدیل مسایل محاسبه ای به مسایل ورودی و خروجی است.
کن باچر (Ken Batcher)


ابر رایانه رایانه ای است که در زمان معرفی از نظر ظرفیت پردازش و به خصوص سرعت محاسبه ازدیگر ماشین ها قوی تر باشد. اولین ابر رایانه ها در دهه ی 1960به طور عمده در موسسه اطلاعات کنترل (CDC) توسط سیمور کری«Seymour Cray» طراحی شد. کری تا دهه ی 1970 زمانی که برای تاسیس شرکت خود پژوهشکده کری, از آن جدا شد آنرا هدایت می کرد. کری بعدها با طرح های جدید خود بازار ابر رایانه را در دست گرفت و تا 25 سال (1965 1990) بی رقیب ماند. در دهه ی 1980به موازات تولید یک دهه قبل تر کامپیوتر کوچک هاشمار زیادی از رقیبان کوچکتر وارد بازار شدند اما بسیاری از آنها در" رکود بازار ابر رایانه ها" ی اواسط دهه ی 1990 ناپدید شدند. امروزه ابر رایانه ها طرح های یک بار تولید شونده هستند که توسط شرکت های "سنتی" مانند IBM و HP طراحی می شوند. این شرکت ها بسیاری از شرکت های دهه ی 1980 را برای استفاده از تجاربشان خریداری کردند، هر چند در طراحی ابر رایانه ها موسسه ی کری متخصص تر است .


معنای کلمه ی ابر رایانه تا حدی متغیر است , و ابر رایانه های امروزی فردا دیگر کاربردی نخواهند داشت، همانگونه که از کولاسوس (Colossus)،‌ (اولین رایانه ی الکترونیکی برنامه دار رقمی دنیا، که طی جنگ جهانی دوم رمز های آلمانی ها را می شکست) پیدا است. ماشین های اولیه ی سی دی سی (CDC) صرفاً پردازنده های منفرد پر سرعتی بودند که تا ده برابر سریع تر از سریع ترین ماشین هایی که توسط دیگر شرکت ها معرفی شده بودند کار می کردند. در دهه ی 1970 بیشتر ابر رایانه ها برای استفاده از پردازنده ی برداری طراحی می شدند و بسیاری از بازیگر های تازه کار برای ورود به بازار پردازنده هایی از این نوع را با قیمت ارزان تر عرضه می کردند. در دهه های 1980و 1990 پردازنده های برداری جای خود را به سیستم های پردازش موازی فشرده با هزاران سی پی یو (CPU) ساده ای داد که برخی از آنها واحد های غیر مرسوم و برخی طرح های متداول و سنتی بودند. امروزه طرح های موازی بر پایه ی ریز پردازنده های RISC " غیر مرسوم" مانند PowerPC یا PA_RISC قرار دارند.

منبع : zorrieh

 

 

 |+| نوشته شده در  دوشنبه بیستم اسفند 1386ساعت 8:22 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Recommended reading list for grid developers

By: Ovais Khan

Edna Nerona in an IBM Developer Work article, recommends a list of reading material for grid developers and researchers. Some of the important links are being provided here, For rest see the actual article.

منبع : http://www.gridblog.com/comments.php?id=242_0_1_0_C

 

 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:28 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Grid Computing as a Managed Service

By: Ahmar Abbas

"Grid computing is the latest to join the bandwagon of managed services. It's a good way of avoiding an expensive infrastructure investment", writes Bob Violino in his article Grid Computing Comes Around in this edition of Global Services magazine.

This article focuses on grid computing as a managed service. “What differentiates grid managed services from straight hosting is that the entire technology substrate that enables grid computing [software, hardware, storage] has already been deployed by the service provider,” says Ahmar Abbas, MD, Grid Technology Partners, a consulting firm in Falls Church, Va. “The client needs to just focus on the application enablement so that it can utilize the grid infrastructure.” Also different is the concept of paying for CPU utilization rather than a monthly fee for hosting infrastructure.

منبع : http://www.gridblog.com/comments.php?id=240_0_1_0_C

 

 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:26 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Elastic Compute Cloud (Amazon EC2)

By: Ahmar Abbas

A few weeks back I blogged about Amazon's Simple Storage Service (S3) and how it was gaining traction in the market.

Well, it turns out that Amazon has even greater ambitions than just providing loads of hosted and managed storage! Today they announced their Elastic Compute Cloud (Amazon EC2).
The key to the technology seems to be the Amazon Machine Image (AMI). Users can create AMI based on their particular application or system profile. These are uploaded to the S3 service and are brought on line when required.

I can see some immediate business continuity / disaster recovery applications. Though not quite sure how load balancing occurs across multiples AMI instances that are brought live as application servers.

Another great step by Amazon to turn is technology platform into a revenue generating engine!

منبع : http://www.gridblog.com/comments.php?id=239_0_1_0_C

 

 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:25 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Software shops get SaaS-y

By: Ahmar Abbas

Independent Software Vendors (ISVs) that venture into the SaaS world have taken on two distinct sets of responsibilities. First, like traditional software companies, SaaS vendors are responsible for continually delivering innovative and relevant software products. Second, SaaS vendors must also develop, manage and support the infrastructure that is used to provide the software to the end user, under a regime of demanding service level agreements and associated penalties. Here's a look at the challenges (and rewards) ahead.

Read full article in ITWorld

منبع :  http://www.gridblog.com/comments.php?id=238_0_1_0_C

 

 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:23 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Back to Grid Blogging - OGF, Airbus deal

By: Ovais Khan

Recently, I have been busy at work so stopped blogging for a while. During the period of inactivity, there had been numerous news items and grid related activities that I have been starring in my reader and mails. The following are highlights of this somewhat longer post.

  • EGA - GGF Merger
  • Airbus into Grid Computing
  • A good Computational Grid Intro



  • EGA - GGF Merger: EGA and GGF, the two mainstream standard groups which have been discussing about a merger for soem time now, have finally merged to form a new entity Open Grid Forum (OGF). OGF Website is still under construction and the Board of Directors and leadership teams are yet to be finalized.
    The Sci-Tech Today has the following comments:

    Mark Linesch, who will lead the group, said the OGF would "open new doors to scientific discovery, business value and commercial adoption worldwide."
    Experts welcomed the end of the groups' prolonged sparring over definitions and semantics.



    Instead of quoting more, I am providing a link of related resource for the interested readers:



     
  • Airbus into Grid Computing: Grid Today in a news story reports that Fujitsu Systems has received order from Airbus for SynfiniWay HPC Grid middleware

    SynfiniWay proved to have the most complete and integrated Grid computing solution for aerodynamics analyses at Airbus, combining service-oriented applications with open workflow capabilities for efficient support of complex dynamic processes.

    Fujitsu Systems Europe has also been contracted to develop the services around the aerodynamic applications, and to integrate SynfiniWay within the existing user desktop tools for transparent grid access.


     
  • A good Computational Grid Intro:
    I came across this well written state of affairs of Computational Grid by Tim Bray in his ongoing weblog.

منبع : http://www.gridblog.com/comments.php?id=236_0_1_0_C

 

 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:22 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Amazon Simple Storage Service - Gaining Momentum

By: Ahmar Abbas

What do Microsoft and SmugMug have in common? Both rely on the Amazon Simple Storage Service (S3) for cheap and reliable web-scale storage. With Amazon S3, growing companies now have the resources to look and feel like a Fortune 500 enterprise.

Today, Amazon announced a variety of customers that together are storing more than 800 million data objects using Amazon S3. On one end of the spectrum there is Microsoft, which is utilizing S3 to dramatically reduce its storage costs without compromising scale or reliability. On the other end are small businesses such as SmugMug that are depending on the S3 benefits of scale and cost-efficiently previously only available to large companies.

منبع : http://www.gridblog.com/comments.php?id=235_0_1_0_C

 

 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:20 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Four Reasons to Attend the Open Source Grid and Cluster Conference

conference_000003749151XSmall.jpgWe're combining the best of GlobusWorld, Grid Engine Workshop and Rocks-a-Palooza into one killer event in Oakland this May. Here's why you should come to the Open Source Grid and Cluster Conference:

  • Great Speakers: We're going to have the rock stars of the grid world speaking and teaching.

  • Great Topics: Dedicated tracks to each of the communities being hosted.

  • Community Interaction: The grid community is spread all over the world, this will be a meeting place to get face time with the people you know by name only.

  • You Can Speak: We're currently accepting agenda submissions for 90 minute panels and sessions.

This should be a fantastic conference, I'll look forward to meeting you there.

منبع : http://gridgurus.typepad.com
 
 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:8 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Grid vs Clouds? Who can tell the difference?

clouds_000003876801XSmall.jpgThe term "cloud computing" seems to be attracting lots of attention these days. If you google it, you'll find more than half a million results, starting with Wikipedia definitions and news involving companies like Google, IBM, and Amazon. There is definitely no shortage of blogs and articles on the subject. While reading some of those, I've stumbled upon an excellent post by John Willis, in which he shares what he learned while researching the "clouds".

One interesting point from John's article that caught my eye was his regard of virtualization as the main distinguishing feature of "clouds" with respect to the "old Grid Computing" paradigm ("Virtualization is the secret sauce of a cloud."). While I do not disagree that virtualization software like Xen or VMware is an important part of today's commercial "cloud" providers, I also cannot help noticing that various aspects of virtualization were part of grid projects from their beginnings. For example, SAMGrid, one of the first data grid projects that served (and still serves!) several of Fermilab's High Energy Physics experiments since the late 1990's, allowed users to process data stored in multiple sites around the world without requiring users to know where the data will be coming from, and how will it be delivered to their jobs. In a sense, from physicist's perspective experiment data was coming out of the "data cloud". As another example, "Virtual Workspaces Service" has been part of the Globus Toolkit (as incubator project) for some time now. It allows an authorized grid client to deploy an environment described by the workspace metadata on a specified resource. Types of environments that can be deployed using this service range from atomic workspace to a cluster.

Although I disagree with John's view on the differences between the "old grid" and "new cloud" computing, I still highly recommend the above mentioned article, as well as his other posts on the same subject.

منبع : http://gridgurus.typepad.com

 

 |+| نوشته شده در  یکشنبه نوزدهم اسفند 1386ساعت 9:6 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Interoperability of AG Toolkit 2.0 and inSORS Ig2.0 Confirmed

By: Mary E. Spada

CHICAGO, Nov. 17 -- After a period of focused testing, inSORS Integrated Communications and Argonne National Laboratory's Mathematics and Computer Science Division have confirmed the interoperability of AG Toolkit 2.0 and inSORS IG2.0. This development is critical to support the increasing demand for collaborative application tools, supporting group-to-group collaboration across the Grid, and incorporating multimedia large-format displays, presentation and interactive environments and interfaces to Grid middleware and to visualization environments. This technical milestone uniquely addresses the Grid community's interest in the open source framework of the AG Toolkit release, combined with priority commercial features such ease of use, application enhancements, and support packages. The user community stands ready to take advantage of this integration to support diverse collaboration requirements, including distributed meetings, lectures, and training. For example, the Access Grid (AG) is used. Dr. Jonathan C. Silverstein, Director of the Center for Clinical Information at the University of Chicago Hospitals, noted that the "compatibility of the inSORS AG solution with the Argonne open source Access Grid 2.0 software is outstanding news for the biomedical community. [Doctors] now have the benefits of both worlds: open source to expedite enhancements coupled with the turn-key commercial solution enabling the functionality to collaborate."

Another group active in the Access Grid community and an inSORS client has already implemented the interoperable package delivered by inSORS. The National Center for Atmospheric Research and the University Corporation for Atmospheric Research use the Access Grid technology as their primary collaboration tool. NCAR/UCAR deployed IG2.0 to several remote sites, including an inSORS custom Virtual Venue and bridging solution. NCAR/UCAR, working with inSORS and IG2.0, is dedicated to taking advantage of the AG Toolkit architecture while maintaining the specialized features provided by the inSORS software.

Michael Galich, CEO of inSORS, said, "Confirming the ability to plug the unique inSORS applications and services into AG 2.0 is exciting, and a complete win-win for all concerned." He noted that collaborative software is important to inSORS customers. "The AG 2.0 platform, united with the inSORS added feature set, creates a uniquely capable and scalable collaboration platform to build on for years to come," Galich said.

Some of the specialized inSORS features include improved audio and video applications, a data-sharing application-IGPix, an integrated text chat, remote control for cameras, an integrated scheduler, an integrated multicast-unicast bridge, interoperability with H323 devices and a record and playback application. These coupled with the new features of ANL's AG 2.0 release, which include data sharing and a generic framework for application integration, constitute a powerful collaboration suite.

Rick Stevens, director of the Mathematics and Computer Science Division at Argonne, said he was delighted that the commercial audience for the Access Grid can easily find the additional support and features they require from inSORS. He said, "Argonne is pleased to report another successful example of technology transferred to the private sector - particularly as the Access Grid represents another triumph for the viability of open source software."

منبع : http://www.gridblog.com/comments.php?id=191_0_1_0_M5

 

 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 6:5 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

ثبت رکورد جدید انتقال اطلاعات با سرعت 16.4 ترابیت بر ثانیه

سرویس اخبار خارجی ایتنا - محققین برای این کار از 164 کانال مالتی‌پلکس که از روی طول موج دسته‌بندی شده و روی سرعت 100Gbps تنظیم گردیده بودند استفاده کردند.

خبر دستیابی محققین Alcatel-Lucent به رکورد جدیدی در ارسال اطلاعات بصورت نوری با استفاده از سه مدار فوتونی یکپارچه که در روز چهارشنبه همین هفته اعلام شد، امیدها را برای رسیدن به سرعت یکصد مگابیت بر ثانیه در شبکه‌های اترنت افزایش داد.

محققین Alcatel-Lucent در مقاله‌ای که در کنفرانس ارتباطات فیبر نوری و نمایشگاه/کنفرانس ملی مهندسی فیبر نوری (OFC/NFOEC) اعلام داشتند برابر تحقیقات انجام شده احتمالاً خواهند توانست به روش‌های مؤثری برای ارسال پرسرعت اطلاعات دست بیابند.

در بخشی از این مقاله آمده است: «فناوری‌های متعددی از جمله optoelectronic photoreceiver خطی و همچنین یک میکسر منسجم فوق سبک و مقاوم در برابر حرارت در این آزمایشات بکار گرفته شدند.»

ارسال موفقیت‌آمیز اطلاعات نوری توسط پژوهشگران آزمایشگاه‌های بل در Villarceaux فرانسه و با کمک آزمایشگاه‌های طالس 3 و 4 شرکت آلکاتل و همچنین شرکت Kylia که در زمینه ارائه راه‌حل‌های نوری فعالیت دارد، با سرعت 16.4 ترابیت بر ثانیه و در مسیری بطول 2550 کیلومتر صورت پذیرفت.

محققین برای این کار از 164 کانال مالتی‌پلکس که از روی طول موج دسته‌بندی شده و روی سرعت 100Gbps تنظیم گردیده بودند استفاده کردند.

منبع : http://www.itna.ir

 

 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 9:16 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

بزرگ‌ترین ابرکامپیوتر اروپا ساخته می‌‌شود

انی که این ابرکامپیوتر تکمیل شود، سرعت اینترنت، سرعت انتقال اطلاعات و... در بریتانیا سریع‌تر از تمام کشورهای اروپایی خواهد شد.

دولت بریتانیا با کمک مالی 52 میلیون پوندی اعلام کرد که قصد دارد بزرگ‌ترین ابرکامپیوتر خود را بیش از پیش تقویت کند. زمانی که این ابرکامپیوتر تکمیل شود، سرعت اینترنت، سرعت انتقال اطلاعات و... در بریتانیا سریع‌تر از تمام کشورهای اروپایی خواهد شد.
بزرگ‌ترین ابرکامپیوتر بریتانیا که قرار است نام آن Terascale Resource یا Hector باشد به موسسه تحقیقاتی مجلس بریتانیا تعلق دارد.
این ابرکامپیوتر می‌تواند محاسبات مختلف از تغییرات آب و هوایی تا تشخیص ساختار اتمی را با سرعتی بسیار بالا انجام دهد.
بر اساس گزارشات منتشر شده، سرعت بزرگ‌ترین ابرکامپیوتر اروپا به 100 ترافلاپ می‌رسد و قادرست در هر ثانیه بیش از 100 تریلیون محاسبه را انجام دهد که این رقم 100 هزاربار سریع‌تر از سرعت محاسبه در کامپیوترهای معمولی است.
دولت بریتانیا بر این باور است كه راه‌اندازی بزرگ‌ترین ابرکامپیوتر این کشور می‌تواند به عنوان گام مهمی برای توسعه جامعه اطلاعاتی در این منطقه محسوب شود.
کشور بریتانیا در حال حاضر از دو ابرکامپیوتر استفاده می‌کند که در این میان کارشناسان پیش‌بینی می‌کنند با ساخت ابرکامپیوتر جدید، هردوی آنها برای همیشه بازنشست خواهند شد.
به گفته مسئولین، یکی از ابرکامپیوترهای کنونی بریتانیا که CSAR نام دارد و در دانشگاه منچستر به سر می‌برد ژوئن سال جاری برکنار می‌شود و این در حالی است که ابرکامپیوتر قدرتمندتر با نام HPCx که زیر نظر متخصصان دانشگاه ادینبورگ کار می‌کند تا دسامبر سال 2008 به فعالیت خود ادامه خواهد داد.
 
 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 9:14 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

جگوار 54 هزار ميليارد محاسبه‌ي رياضي را در يك ثانيه انجام مي‌دهد

به گفته‌ي متخصصان رايانه، اين ابر رايانه پنجمين ابر رايانه‌ي قدرتمند جهان و مطمئنا سريع‌ترين دستگاه علم باز در آمريكا است، اين ابررايانه كه "جگوار" نام گرفته است؛ پيش از آن كه سرعت آن ارتقا داده شود، در رتبه‌ي سيزدهمين قدرتمندترين ابر رايانه‌هاي جهان قرار داشت.

هم اكنون قدرتمند‌ترين ابر رايانه‌ي جهان IBM Blue Gene است كه شش برابر جگوار سرعت عملكرد بيشتري دارد و مي‌تواند 324 هزار ميليارد محاسبه‌ي رياضي را در مدت يك ثانيه انجام دهد.
 
 
 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 9:13 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

ابرکامپیوترها پرواز می‌کنند!

سازمان فضایی آمریکا(ناسا) قصد دارد با سرمایه‌گذاری فراوان یک ابرکامپیوتر را به فضا ارسال کند.

این مرکز با استفاده از چندین متخصص و کارشناسان قصد دارد ابرکامپیوتر مخصوص خود را هفتم آگوست به فضا پرتاب کند.
اقدامات ناسا برای سیم‌کشی‌های فضایی و راه‌اندازی شبکه‌های اطلاعاتی فضایی تاکنون خسارات سنگینی را به این سازمان وارد آورده است.
بر اساس گزارشات منتشر شده در نشریات تخصصی Aviation Week و Space Technology، ناسا قصد دارد تا پایان سال آینده یک ابرکامپیوتر دیگر را نیز از شرکت کامپیوتری IBM خریداری و آن را به فضا پرتاب کند.
هنوز اخباری در مورد قیمت ابرکامپیوترهای فضایی ناسا منتشر نشده است.
 

منبع : http://www.ict-khz.com


 

 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 9:10 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

امارات ابركامپيوتر جديد ساخت

مركز آموزش و تحقيقات عالي امارات متحده عربي يك ابركامپيوتر جديد راه‌اندازي كرد.

اين ابركامپيوتر كه ساختار آن بر پايه سيستم Blue Gene ساخت IBM طراحي شده، قابليت تحقيق و پژوهش در منطقه را تا چندين برابر افزايش مي‌دهد.
صنايعي از قبيل نفت، گاز، بانكداري و ... مي‌توند از اين ابر كامپيوتر استفاده كنند. توان اين ابركامپيوتر محاسبه 7/5 ترابايت محاسبه در ثانيه است.


منبع : http://www.itna.ir

 

 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 9:6 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

تسخير مرز تازه نانومتری در عالم تراشه ها

شرکت تراشه سازی اينتل اعلام کرده است که در آينده نزديک توليد انبوه پردازنده های مجهز به ترانزيستورهايی به قطر تنها 45 نانومتر (45 ميلياردم متر) را آغاز خواهد کرد.

هر چه مصالح اوليه ساختمانی ريزپردازنده کوچکتر باشد، سرعت و بازدهی آن بيشتر می شود.

شرکت کامپيوترسازی آی بی ام نيز گفته است که قصد توليد پردازنده ای با عناصر ريزتر از نسل فعلی را دارد.

"آی بی ام" که گاه از آن به عنوان "بيگ بلو" نيز ياد می شود و فناوری جديد را با شرکايش توشيبا، سونی و ای ام دی (AMD) توسعه داده، قصد دارد پردازنده های تازه را از سال 2008 در تراشه های خود جای دهد.

اما اينتل می گويد توليد تجاری پردازنده های تازه خود را از اواخر امسال در سه کارخانه آغاز خواهد کرد.

نشت الکتريکی

اين تحول بدان معنی است که "قانون" بنيادی مور همچنان اعتبار خود را حفظ می کند.

گوردون مور، از بنيانگذاران شرکت اينتل، در سال 1965 پيش بينی کرده بود که تعداد ترانزيستورهای روی يک تراشه (با مساحت ثابت) هر دو سال يکبار دو برابر خواهد شد.

پردازنده های تازه اينتل که "پنرين" (Penryn) نامگذاری شده است بيش از 400 ميليون ترانزيستور را روی تراشه ای که مساحت آن نصف يک تمبر باشد جای می دهد.

پنرين مانند پردازنده های فعلی به صورت دو هسته ای (dual-core) يا چهار هسته ای (quad-core) عرضه خواهد شد که بدان معنی است که روی هر تراشه دو يا چهار پردازنده جداگانه قرار خواهد داشت. اينتل سرعت پردازنده جديد را اعلام نکرده است.

توليد تکنولوژی 45-نانومتری از زمان ساخت ترانزيستور 65 نانومتبری هدف تراشه سازان بوده است.

فلزات جديد

ترانزيستور يک کليد ساده الکترونيکی است. هر تراشه نيازمند تعداد خاصی ترانزيستور است و هرچه تعداد آنها بيشتر باشد، تراشه می تواند محاسبات بيشتری انجام دهد.

تراشه سازان برای بيش از 45 سال موفق شده اند با کوچک کردن تدريجی ترانزيستورها و جای دادن تعداد بيشتر و بيشتری از آنها روی هر تراشه، پاياپای قانون مور حرکت کنند.

با اين حال با گذر از مرز 65 نانومتری، سيليکونی که برای ساختن عناصر اساسی اين کليدها - موسوم به نارساناهای دروازه ای (gate dialectric) - به کار گرفته می شد ديگر به آن خوبی عمل نمی کنند.

در نتيجه جريان الکتريکی گذرنده از ترانزيستور نشت کرده و بازدهی تراشه را کم می کند.

برای جلوگيری از اين وضع، پژوهشگران مجبور به ساختن ماده تازه ای شده اند که بتواند جريان های الکتريکی در چنين ابعاد کوچکی را مهار کند. دسته تازه ای که جايگزين سيليکون شده است فلزات high-k نام دارد.

'بزرگترين تغيير'

گوردون مور توسعه و گنجاندن اين مواد به عنوان عناصر تراشه را "بزرگترين تغيير در فناوری ترانزيستور" از اواخر دهه 1960 توصيف کرده است.

نخستين تراشه های حاوی وسايل 45 نانومتری را شرکت اينتل اواخر سال گذشته به نمايش گذاشت، اما آنها هنوز در محصولات تجاری جای داده نشده بودند.

دکتر تزشيانگ چن، معاون علوم و تکنولوژی در مرکز تحقيقات آی بی ام گفت: "صنعت تراشه سازی تاکنون با يک مانع عمده برای جلو بردن تکنولوژی امروزی روبرو بود.... اما بعد از حدودا 10 سال تلاش، اکنون راهی به جلو يافته ايم."

شيوه دقيق ساخت فلزات high-k توسط اينتل و آی بی ام فاش نشده است اما نکته مهم آنکه هر دو شرکت گفته اند که می توان آن را با کمترين زحمت در فناوری محصولات فعلی جای داد.

منبع : http://www.ict-khz.com
 
 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 9:2 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

تراشه ای که افکار انسان را می خواند

متيو نيگل، 25 ساله، در سال 2001 در يک حمله خيابانی از گردن به پايين فلج و به صندلی چرخدار محدود شد.

پزشکان تابستان گذشته در بيمارستان "نيوانگلند ساينای" در ماساچوست اين تراشه را در سر او کار گذاشتند که به او امکان داده است برخی وسايل خانه را با فکر کردن کنترل کند.

اين تراشه افکار او را می خواند و آنها را برای رمزگشايی به يک کامپيوتر می فرستد.

کنترل از راه دور

او به لطف اين دستگاه و نرم افزارهايی که به وسايل خانگی اش وصل شده است می تواند با فکر کردن تلويزيون را روشن و خاموش کند، کانال ها را عوض يا صدا را کم و زياد کند.

دانشمندان از سال ها قبل سرگرم طراحی و توسعه سيستمی بودند که به معلولان امکان دهد وسايل خانگی را با مغزشان کنترل کنند.

مطالعات نشان داده است که ميمون ها می توانند يک کامپيوتر را به کمک الکترودهايی که در مغزشان کاشته می شود کنترل کنند.

اخيرا چهار نفر، که دو نفر از آنها افراد نيمه معلول در صندلی چرخدار بودند، با به سر کردن کلاهی مجهز به 64 الکترود که امواج مغزی را دريافت می کرد، موفق شدند مکان نمای کامپيوتر (cursor) را حرکت دهند.

تراشه ای که برای آقای نيگل ساخته شده و "BrainGate" نام دارد شامل تقريبا 100 الکترود به باريکی موی سر است که در عمق يک ميليمتری بخشی از مغز که مسئول کنترل حرکت است، کار گذاشته شد.

 
اطلاعات جمع آوری شده توسط الکترودها به کامپيوتری که علائم مغزی را تحليل می کند منتقل می شود.
اين علائم برای به حرکت در آوردن مکان نما ترجمه و تعبير می شوند و به کاربر امکان می دهد با فکر کردن، وسايلی مانند رايانه شخصی را کنترل کند.

پروفسور جان داناهيو، عصب شناس در دانشگاه براون در "رود آيلند" يکی از دانشمندانی است که در ساخت اين دستگاه که توليد شرکت "سايبرکينتيک" است دست داشته است.

وی می گويد: "صفحه کامپيوتری در واقع مثل يک دستگاه کنترل از راه دور تلويزيون است. کاربر تنها کافی است که مکان نما را (با فکر کردن) روی يکی از گزينه ها ببرد و اين معادل همان کليک کردن روی آن گزينه است."

آقای نيگل همچنين امکان يافته است با استفاده از افکارش يک بازوی خودکار و يک دست مصنوعی را برای برداشتن يک شيئ از دست شخصی ديگر و گذاشتن آن در دست يک شخص ثالث کنترل کند.

پروفسور داناهيو اميدوار است که پيوندهايی مانند اين در نهايت به افراد معلول امکان دهد بار ديگر بازوها و پاهايشان را به کار گيرند.

هدف بلندمدت، طراحی دستگاهی در ابعاد يک تلفن همراه است که با باتری کار می کند و می تواند عضلات بيمار را به کار اندازد که البته کاری بسيار دشوار خواهد بود.


منبع : http://www.ict-khz.com

 

 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 8:59 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

بزرگ‌ترین شطرنج‌باز دنیا از کامپیوتر شکست خورد

Deep Fritz،کامپیوتر مخصوصی که برای انجام مسابقات شطرنج طراحی شده است، رقیب خود ولادیمیر کرانیک(Vladimir Kramnik) یکی از شطرنج‌بازان مشهور جهان را طی شش مسابقه در آلمان شکست داد.

Deep Fritz توانست این رقیب سرسخت را با نتیجه چهار بر دو پشت سر بگذارد.
آخرین مسابقه این کامپیوتر با کرانیک پنج ساعت به طول انجامید و در آن موفق شد با 47 حرکت رقیبش را از پای دربیاورد.
ولادیمیر کرانیک که اهل روسیه است و هم‌اکنون 31 سال دارد، برای بازی با این کامپیوتر توانمند 500 هزار دلار دریافت کرد که اگه پیروز این رقابت بود، دو برابر رقم یاد شده را به‌دست می‌آورد.
کرانیک بعد از انجام این مسابقه گفت: «اندکی ناامید شده‌ام، ولی خودم را آماده می‌کنم که طی یکی دو سال آینده حتما Fritz را شکست دهم.»
در سال 2002 کرانیک موفق شده بود در هشت بازی Deep Fritz را شکست دهد. اما نرم‌افزار مربوط به مسابقه شطرنج از آن زمان تا کنون چندین بار به‌روز شده و همین امر موجب شد تا کرانیک امسال مسابقه را واگذار کند.
در اکتبر سال گذشته کرانیک موفق شده بود با شکست رقیب بلغاری خود با نام وزلین توپالو(Veselin Topalov) به عنوان برترین شطرنج‌باز جهان از سال 1993 تا کنون برگزیده شد.
 

 
 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 8:56 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Web 2.0 در نسل جدید نرم‌افزارهای ERP

شرکت Workday که یکی از بزرگ‌ترین مراکز تولید نرم‌افزار un-ERP محسوب می‌شود، آخرین نسخه نرم‌افزار تجاری و مدیریتی خود را به ابزارهای Web 2.0 مجهز کرد.

شرکت Workday نسخه بتای آخرین محصول خود را در تاریخ 20 آگوست به بازار معرفی کرد و هم‌اکنون با ارایه یک وصله جدید، آن را به‌روز کرده است.
آخرین محصول Workday نرم‌افزار Human Capital Management و چندین سیستم مالی و اداری را در خود جای داده است و می‌تواند در شرکت‌های بزرگ و بین‌المللی مورد استفاده قرار گیرد.
شرکت Workday طی سال‌های قبل موفق شده است بزرگ‌ترین و جامع‌ترین نرم‌افزارهای مدیریتی را به بازار عرضه کرده است و هم‌اکنون می‌کوشد با استفاده از امکانات Web 2.0، دور تازه‌ای از رقابت‌ها را با دیگر شرکت‌ها آغاز کند.
این شرکت تولید نرم‌افزارهای مجهز به ابزارهای Web 2.0 را از سال 2005 آغاز کرد و هم‌اکنون یکی از بزرگ‌ترین تولیدکنندگان نرم‌افزارهای مدیریتی محسوب می‌شود.

منبع : http://www.ict-khz.com


 

 |+| نوشته شده در  شنبه یازدهم اسفند 1386ساعت 8:50 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

Parallel and Distributed Processing Group -- GPPD

UFRGS - Universidade Federal do Rio Grande do Sul

Institute of Informatics

History

Parallel and Distributed Processing Group (GPPD) is a research group which has several projects concerning parallel and distributed processing. It is located within the Institut of Informatics, at UFRGS, Brazil. GPPD has started its history during 80's with the return of prof. Philippe Navaux from his doctorate in France. Initially, the research was focused on computer architectures, parallel processing and performance evaluation. With the return of prof. Claudio Geyer from Grenoble (France) in 1991, the group was named GPPD, integrating research topics redarding parallel and distributed processing. In 1995, with the conclusion of the Tiaraju Diverio's doctorate, the group has included research about high performance applications, parallel algorithms and computational complexity, as well as the creation of high performance processing courses and events.

 

The GPPD has always maintained close relations with French Universities and Laboratories through international cooperation projects. Joint researches originated from such projects made possible the doctorate of several researchers with master degree from UFRGS. Besides France, GPPD has nowadays copperations with several countries, such as Germany, United States, England, Spain and others.

  • Research

    During last years, the parallelism has been proposed as the main solution to increase computing systems performance. Several parallel machines based on new architectures have emerged on the market. However, in these architectures there are programming and management difficulties greater than those found in sequential machines. The XXI century has been marked by growing advance of cluster computing. This architecture is composed by simple machines interconnected through high performance network, allowing the assemblage of low cost systems that offer better computational power.

    The complexity regarding development of distributed systems is a serious problem in those architectures usage. Sometimes, programmers must know some internal details about the operating system and its communication subsystem. Thus, parallel and distributed system development is a more complex task than sequential one and it can be simplified using adequate software tools.

    GPPD considers solutions and alternatives from problems involved on parallel and distributed applications development. Following this idea, the group has different research approaches: heterogeneous network operating system (HetNOS project), parallelism and distribution exploration in logic programming (OPERA project), to foment and to develop cluster technologies (LabTec project), development of middleware for grid and mobile computing (ISAM project), web services-based Portal to unify the access to multiple clusters (JavaWSPad project).

  •  

  • The main research areas are related to (in alphabetical ordering):

    Cluster and Grid computing
    Image processing
    Mobile and Ubiquitous Computing
    Object-oriented distributed languages
    Parallel and distributed algorithms
    Parallel Prolog
    Performance evaluation
    Simultation and Games
    Processor Architecture
    Tools and environments for parallel and distributed programming
    Visual debugging and programming

  •  

    Projects


    APSE - Superscalar Processor Architectures

    Coordinator: Prof. Philippe O. A. Navaux, PhD

    DECK - Distributed Execution and Communication Environment (as part of MultiCluster project)
    Coordinator: Prof. Philippe O. A. Navaux, PhD

    Direto - Advanced Systems for Email, Agenda and Catalog
    Coordinator: Prof. Cláudio Fernando R. Geyer, PhD

    Disperso - Distributed and Parallel Environments and Systems
    Coordinator: Prof. Cláudio Fernando R. Geyer, PhD

    DPC++ - Distributed Processing in C++ (as part of MultiCluster project)
    Coordinator: Prof. Philippe O. A. Navaux, PhD

    Group of Computational Mathematics - in Portuguese
    Coordinator: Prof. Tiarajú Asmuz Diverio, PhD

    HetNOS - Heterogeneous Network Operating System
    Coordinator: Prof. Cláudio Fernando R. Geyer, PhD

    MultiCluster - Support for Parallel Programming on Multiple Clusters
    Coordinator: Prof. Philippe O. A. Navaux, PhD

    OPERA - Parallel Prolog
    Coordinator: Prof. Cláudio Fernando R. Geyer, PhD

    PADI - PArallel Debugger Interface
    Coordinator: Prof. Philippe O. A. Navaux, PhD

    SEGIME - Medical Image Segmentation
    Coordinator: Prof. Philippe O. A. Navaux, PhD

    ISAM - Support Infrastructure for Mobile Applications
    Coordinator: Prof. Cláudio Fernando R. Geyer, PhD

    منبع : http://gppd.inf.ufrgs.br

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 7:41 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Vishwa: A Reconfigurable Scalable Middleware for Grid Computing

    DOSLab Page

    Advancements in networking and cheaper computing technology have enabled the Internet to be used for resource sharing, instead of just document sharing. The resources can include computing, storage and network resources. The dynamic nature of the Internet in terms of node/network failures poses challenges for large scale resource sharing. Further, the resources are autonomic, implying that they may join or leave the system dynamically. Thus, solutions for Internet scale resource sharing must enable dynamic application dependability and middleware reconfigurability. This means that the underlying resource sharing middleware must ensure dependability of applications in spite of resource/network dynamics. Further, the middleware components themselves must adapt to these dynamics (middleware reconfigurability).

     

    Peer-to-Peer (P2P) systems such as Gnutella, Freenet, Pastry etc. provide reconfigurability and scalability. However, these file sharing P2P systems may not be directly usable for sharing compute resources on the Internet. This is because they do not consider the proximity of resources or their capabilities. We explore the use of P2P system concepts to build a reconfigurable and scalable middleware for Internet scale resource sharing. In unstructured P2P systems such as Gnutella and Freenet, the overlay is built in an uncontrolled fashion, possibly with self-organizing behaviour. They provide flexibility for finding resources by supporting arbitrary queries for searching. They may be inefficient, as they use flooding for the search. Further, unstructured P2P systems cannot provide guarantees about finding the data. In contrast, structured P2P systems assign static identifiers to peers and impose a overlay structure based on the node identifier. A routing structure based on distributed data structures (Distributed Hash Table, as in Chord and Pastry) is also imposed. The structured P2P systems can provide data location guarantees and are efficient for searching (O(log(n)) time, for n nodes). However, they support only limited and exact matching queries.

     

    We propose Vishwa, a two layered P2P middleware for resource sharing in the Internet. It is a scalable and dynamically reconfigurable middleware. It provides a dependable execution environment for grid applications. The task management layer of the middleware is responsible for initial task deployment on the best available under-utilized nodes as well as the runtime migration of tasks to handle load dynamics. The task management layer is realized as an unstructured P2P layer and allows logical resource clustering based on proximity. The unstructured overlay allows neighbour lists to be constructed based on application specific criteria, whereas in structured overlay, the neighbour lists are only based on node identifiers. Thus, the task management layer of Vishwa constructs the neighbour list based on resource capabilities. If you want to know more about Vishwa, please follow the link below for the presentation or try the Vishwa technical report on the publications page.

     

    Slides:

    Vishwa    Vishwa Compared with Globus Toolkit

     

    Data Management in Grids using the Two Layered P2P Architecture

    DOSLab Page

    We have extended Vishwa to a data management platform named as Virat. Large amounts of scientific data are being produced, for instance see Grid Physics Project or the Compact Muon Solenoid (CMS). Distributed computations on this data must be scheduled. Hundreds to thousands of geographically distributed users need access to data for performing computation. So, there is a need to replicate the data at appropriate locations to handle node/network failures and minimize computation time and/or bandwidth. There must be ways of describing the data in the form of meta-data to allow geographically distributed access to the data. The meta-data must also be replicated for fault-tolerance. Thus, replica management of data as well as meta-data is important. There must also be efficient mechanism to search/query the data. Another important requirement in a data grid is the discovery of data/compute resources based on proximity and node capabilities. We have designed and developed Virat to address the above issues and the orthogonal non-functional properties of scalability and fault-tolerance.

     

    A platform that can be used for building such generic services must address key issues such as scalability, middleware reconfigurability, dependability, replication and resource/data discovery mechanisms. Existing shared object spaces cannot be used directly as such a platform because they do not scale up. Inefficient mechanisms for handling failures and object lookups and the use of centralized components inhibit their scalability. Virat focuses on the integration of shared object spaces with Peer-to-Peer systems. Virat provides a shared object space abstraction over a wide area distributed system. It is built using a unique two-layered P2P architecture that combines the advantages of structured and unstructured P2P systems. The unstructured layer facilitates capability based neighbourhood formation and allows cluster-level replication of data (and meta-data) to handle failures and to maintain consistency. The structured layer allows failure data to be recovered even across zones/clusters in O(log(N)). Performance studies (over Intranet and WAN testbeds) using a prototype implementation suggests that Virat can scale to millions of objects. For more details on Virat please check the following slides or follow the publications link for Virat papers.

     Slides:

    Virat

     

    Distributed and Object Systems Lab, IIT Madras

    http://dos.cs.iitm.ernet.in/index.shtml

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 7:27 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Breaking Out of the Core

    apples_000004630724XSmall.jpg

    I think that one of the most exciting consequences of the rise of multicore is the possibility of overcoming the limitations of the WAN by processing where you collect your data.    It is exceptionally difficult and/or expensive to move large amounts of data from one distant site to another regardless of the processing capability you might gain.  Paul Wallis has an excellent discussion about the economics and other key issues that the business community faces with computing on "The Cloud" in his blog Keystones and Rivets.

    So how do cores help us get passed the relatively high costs of the WAN?  The first signs of this trend will be wherever significant amounts of data are collected out in the field.  Currently you have a number of options, none of them great, for retrieving your data for processing.  These include:

    • Provision the bandwidth required to move the data, typically at significant cost.
    • Significantly reduce the size or quality of the data and transmit it more affordably.
    • Write the data to media and collect it on a regular basis

    There never really was much consideration given to processing the data in situ because the computational power just was not there.  Multicore processors have allowed us to rethink this. 

    For example, consider one of the most sought after goals in a hot industry: near-real time monitoring of a reservoir for oil-production and/or for CO2 sequestration. (see the Intelligent Oilfield, IPCC Special Report on Carbon dioxide Capture and Storage)  The areas where this is most desired tend to be fairly remote such as offshore or in the middle of inhospitable deserts.  There is no network connectivity to speak of to these areas let alone enough to move data from a large multi-component ocean-bottom seismic array like those found in the North Sea.

    Consequently, a colleague of mine and I were tasked with how we might implement the company’s processing pipelines in the field.  Instead of processing the data using hundreds of processors and an equivalent number of terabytes of storage everything needed to fit on ***maybe*** as much as a single computer rack.  Our proposal had to include power conditioning and backup, storage, processing nodes, management nodes (e.g. resource managers), as well as nodes for user interaction.  Electrical circuit size limitations also limited our choices.  Needless to say, 30-60 processors just was not enough capacity to seamlessly transition the algorithms from our primary data center.  The only way it could be done was by developing highly specialized processing techniques: a task which could take years.

    Now that we are looking at 8 cores per processor with 16 just around the corner everything has changed.  Soon, it will be possible to provision anywhere from 160-320 processors under the same constraints as before.  It is easy to imagine another doubling of this shortly thereafter.  Throw in some virtualization for a more nimble environment and we will be able to do sophisticated processing of data in the field.  In fact, high-quality and timely results could alleviate much of the demand for more intensive processing after the fact.

    Who needs the WAN and all of its inherent costs and risks? Why pay for expensive connectivity when you could have small clusters with hundreds of processors available in every LAN? If remote processing becomes commonplace because of multicore, we might see the business community gravitate towards the original vision of the Grid.

    منبع : http://gridgurus.typepad.com

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 7:23 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    How Will Users Interact With the Cloud?

    This is a repost of a reply I wrote to a LinkedIn question

    Mark Mathson gave a great answer and blog link in his reply, but it's worth going down one additional level of detail.

    A cloud is operated by something. That something is software and people need to be able to interoperate with that software. So the question is twofold.

    1) What does that software do.
    2) What does the interaction model look like.

    Part one is mostly undefined. The term cloud computing is only a few months old at this point and there is no definition that I've seen that describes in detail what the services are and how they work. Since cloud computing is a subset of grid computing we can make some educated guesses as to how this will turn out.

    o There will have to be a security model. This model will be complex enough that I'm calling out additional specifics. Currently there is no model specified in any definition of cloud computing.

    o That model includes delegation. In the early development of the grid we had a security model without delegation and it was a non-starter. Anytime you need to request something of a service you need to delegate authority to that service.

    o That model will have to be multi-institutional. By this I mean that the model must allow people from different communities to be able to access the resources within the cloud without having to join a common security domain. The owner of the resources will have to be able to make local decisions about who is allowed to use his resources.

    o Monitoring will be complex, but must run on a common backplane. In the grid community we have hierarchical, distributed monitoring that allows canonical services and a variety of applications to push monitoring information upstream to consumers. No definition of cloud computing currently has any monitoring specification.

    o Data handling will be a challenge. In the grid community we discovered early on that moving data between facilities was a bottleneck due to some decisions made in developing TCP decades ago. We worked around these to develop protocols that move data at near theoretical maximum rates even in WAN environments. We also found that people who want to move a lot of data find it cumbersome to manage the processes to do that themselves. We developed 'fire and forget' mechanisms to moving data. A user can make a request, walk away and check the results the next day. As a side note, this behavior requires delegation to work in a secure fashion.

    All of the above have to be dealt with before one even begins to contemplate the VM issues that seem to dominate the cloud computing discussions.

    The second part is about how the user will interact. That one is much more trivial to answer. Our users already interact in a variety of ways. Some examples include browsers, native applications, java applications, remote desktops and display technologies like x-windows.

    All of those will continue to be in play in a cloud based architecture because each has significant structural, administrative and performance advantages that have led to their survival for a long time.

    The cloud won't be about what window a user interacts with, it will be about the plumbing that makes that window useful.

    منبع : http://gridgurus.typepad.com

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 7:21 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Why Should You Use Open Source?

    bolts_000000884335XSmall.jpgThe open source justification is no longer the new path that few organizations have walked. I remember in the mid-90's when I switched from Solaris x86 to BSD and then to linux trying to explain what I was doing to co-workers. At that point I wasn't even trying to justify a decision to migrate some production machines, I was just exploring alternatives on my workstations. Still, I got far more confusion and skepticism then nods of understanding.

    Today the world is different. People use open source for a wide variety of things. Most folks understand the landscape and regularly use total cost of ownership and risk mitigation as important parts of their final decision. What's still missing, in some cases, is the ability to take advantage of a unique opportunity that open source give you at an infrastructure layer.

    Grid software is fundamentally concerned with managing very complex business needs in a manner that allows humans to understand what is going on with their systems. As such one of the most important aspects is the ability to integrate that infrastructure with applications in a manner that allows developers and system integrators to present simpler interfaces to their users.

    With proprietary systems there are often APIs that allow this to be done. However, in no instance that I've seen are these APIs on the 'critical path' for the company making the software. They are always offered essentially as a patch that some powerful customer needed and now is slowly leaking out to the rest of the customer base. These systems also tend to be highly unstable and each version carries changes in the API. These changes are frequently radical and nearly always undocumented until a customer comes across something that has stopped working and raises a stink with the vendor.

    Open source software tends to work differently, especially at an infrastructure layer. The components are built by folks who are 'eating their own home cooking' and understand the implications of a change in interface. As such, they tend to be infrequent and, when they do occur, highly justifiable. The reduction in quantity of changes is helpful, but because there is no vendor forcing an upgrade, the fact that you can adopt a new version when the timing is right for your organization is also a big plus.

    The world has changed. And it's changed for the better for data center managers globally.

    منبع : http://gridgurus.typepad.com

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 7:14 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    GridLab Testbed All GridLab technologies fit into the GridLab architecture which defines a cleanly layered environment. On the highest layer (called User Space) there is GAT (Application oriented high level API to complex and dynamic Grid Environments) and GridSphere (Grid-Portal development framework). The Middleware layer (called Capability Space) covers the whole range of Grid capabilities as required by applications, users and administrators, such as: GRMS (Grid Resource Management and Brokering Service), Data Access and Management (Grid Services for data management and access), GAS (Grid Authorization Service), iGrid (GridLab Information Services), Delphoi (Grid Network Monitoring & Performance Prediction Service), Mercury (Grid Monitoring infrastructure), Visualization (Grid Data and Visualization Services), Mobile Services (Grid Services supporting wireless technologies). GridLab technologies help real end-users to develop and run their grid-enabled applications. We have been testing our solutions with Cactus (Framework for scientific numerical simulations) and Triana (Visual workflow-oriented data analysis environment).

    GridLab Testbed The GridLab Testbed is a Pan-European distributed infrastructure which consists of heterogeneous machines from various academic and research institutions (see its current status). It has been established as a result of collaboration of all GridLab participants and partners in order to provide a real robust grid environment. All our middleware services are deployed and tested on the GridLab Testbed every day (see more details). Moreover, useful statistics from daily software builds on our machines are also available (click here) together with a set of GridLab specific tests, such as matrix tests, functionality and usability of services, etc.

     

    Quick links to GridLab Workpackages:
    TB WP1 WP2 WP3 WP4 WP5 WP6 WP7 WP8 WP9 WP10 WP11 WP12 WP13

    منبع : http://www.gridlab.org

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 6:59 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Access for Mobile Users

    GridLab Mobile Home

    GridLab Mobile logo

     

    Motivation

    Small and flexible mobile devices are increasingly used for web access to various remote resources. This working package wants to provide grid access mechanisms for such devices. This requires adaption of existing access technologies like portals for low bandwidth connectivity and low level end user hardware. The mobile nature of such devices also requires flexible session management and data synchronization. This work package will enhance the scope of present grid environments to the emerging mobile domain. Utilizing the new higher bandwidth mobile interconnects, very useful and previously impossible scenarios of distributed and collaborative computing can be realized.

    Place in the GridLab architecture

    PlaceInArchitecture.jpg - 31769 Bytes

    Access to Grid(Lab) mobile services

    The main goal of our efforts is to give the Grid users a possibility to access their applications and resources from any place using mobile devices. According to our approach the devices are incorporated only as the clients of Grid services (not peers). Moreover, because of limitations of mobile devices this approach assumes adopting a gateway between the client and the Grid. These limitations forced us to pay special attention to build flexible user interfaces as well.

    We developed (or co-developed) also several specialized mobile-oriented Grid services. In some cases we provided only a mobile wrap-up of the heavyweight Grid services placed in the gateway. Some of them are build from the scratch as a specialised mobile service.

    Our mobile client is tighty coupled with the gateway. This "connection" means that features in the mobile client are mapped to corresponding plugins in the gateway. Those plugins are responsible for interacting with Grid services in the name of the mobile client.

    Minimal Grid Interface

    The below schema presents our approach: we give mobile users access to Grid services via gateway. The mobile client running on a mobile device together with the gateway make up the Minimal Grid Interface.

    GridLab model of mobile access to the grid

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 6:56 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
    Firmware چيست؟

    جواب دادن به اين سؤال كمي پيچيده است. تا حدودي مي‌توان گفت كه با يك <مفهوم> سر و كار داريم؛ مفهومي به نام <ميان‌افزار>؛ موجوديتي كه نه سخت‌افزار است نه كاملاً مي‌توان آن را نرم‌افزار دانست. بهتر است كمي بيشتر توضيح دهيم. براي مديريت هر سخت‌افزاري يا بهتر بگوييم براي استفاده بهينه از امكانات سخت‌افزاري، نيازمند يك سيستم مديريتي هستيم كه توانايي مديريت و زمانبندي اجرا و كنترل فرآيندها و پردازش‌ها را داشته باشد. در مدل‌هاي پيشرفته (مانند انواع كامپيوتر، برخي از مدل‌هاي گوشي موبايل و انواع Handheld) نام اين سيستم مديريتي سيستم‌عامل و در مدل‌هاي ساده‌تر (مانند انواع پخش‌كننده MP۳، انواع ساده گوشي موبايل همانند نوكيا ۱۱۰۰ و انواع ساده‌تر و دستگاه‌هاي ساده‌تر مانند انواع رايتر) نام آن Firmware يا به فارسي، ميان‌افزار است.

    در انواع پيشرفته، كار ميان‌افزار ترجمهِ دستورات نرم‌افزاري به زبان قابل فهم براي سخت‌افزار و در انواع ساده‌تر، مثلاً در يك پخش‌كننده MP۳، تفسير فرامين صادر شده از طريق دكمه و درخواست اجراي فرمان مورد نظر از سيستم يا مدارات موجود در دستگاه است.

    محل دقيق ميان‌افزار كمي بالاتر از سخت‌افزار است. در واقع مي‌توان اظهار داشت كه اولين نرم‌افزار مرتبط ( يا حتي تنها نرم‌افزار) با سخت‌افزار، ميان‌افزار است. برنامه‌نويسان مي‌دانند كه محل قرارگيري ميان‌افزار، دقيقاً پايين‌تر از اسمبلر است.

    ميان‌افزارها را در كارگاه يا كارخانه به وسيله دستگاه‌هايي به نام Emulator در حافظه‌هاي قابل برنامه‌ريزي و فقط خواندني موسوم به Programable Read- Only Memory) PROM) قرار مي‌دهند. در واقع اين حافظه‌ها را به وسيله Emulator برنامه‌ريزي مي‌كنند. يك نمونه از انواع اين حافظه‌ها همان بايوس كامپيوتر است كه ميان‌افزاري را (همان تنظيمات بايوس) نيز اجرا مي‌كند. محتويات اين حافظه‌ها نيز ايستا است و پس از خاموش شدن دستگاه به اطلاعات موجود در آن‌ها صدمه‌اي وارد نمي‌آيد.

    گاهي ممكن است در زمان طراحي و توليد اين ميان نرم‌افزارها (كه در مرحله طراحي و توليد گهگاه به اندازه يك برنامه سنگين محاسباتي زمان‌بر هستند) مشكلاتي به وجود آيد كه تنها در زمان عملكرد مشخص شوند. از اين رو توليدكنندگان سخت‌افزار مرتباً به بررسي ميان‌افزارهاي نصب شده اقدام مي‌كنند و در صورت وجود خطا يا ايراد نرم‌افزاري، اقدام به برطرف نمودن آن ايراد مي‌كنند و نسخه بروز شده آن ميان‌افزار را منتشر مي‌سازند. از اين رو بروز‌رساني ميان‌افزار سخت‌افزار‌هاي نصب شده در كامپيوترمان، گوشي موبايلمان، پخش‌كننده MP۳ و دستگاه‌هاي سخت‌افزاري كه كنترل شبه‌‌نرم‌افزاري دارند، كاري عاقلانه و سنجيده است.

    توجه‌

    در استفاده از دستورالعمل‌هاي ارائه شده نهايت دقت را به كار ببريد.
    عصر شبكه هيچ‌گونه مسئوليتي را در خصوص وارد آمدن صدمه‌ و خسارت به دستگاه شما نمي‌پذيرد.

    رايتر شما چه CD Writer باشد، چه DVD Writer، فارغ از نوع، مدل و نشان تجاري دستگاه، داراي يك Firmwareاست. مانند تمام نرم‌افزارها، Firmware نيز مرتباً از سوي سازنده ارتقا پيدا مي‌كند. دليل اين كار نيز كاملاً مشخص است؛ برطرف كردن مشكلات و نواقصي كه در زمان طراحي يا توليد و اجراي آن به‌وجود مي‌آيند.

    اين مشكلات ممكن است در مراحل اوليه طراحي و توليد خود را نشان ندهند. معمولاً پس از اجراي نرم‌افزار، نمايش انواع باگ‌ها و مشكلات منطقي و غير‌منطقي شروع مي‌شود و شب‌هاي به‌يادماندني‌اي را براي تيم طراحي به يادگار خواهد گذاشت. از اين‌رو هر توليد‌كننده‌اي براي اين‌كه ضمن حفظ اعتبار خود مشكلاتي را كه ممكن است در زمان استفاده توسط كاربر تشخيص داده شوند، برطرف سازد، اقدام به تهيه نسخه‌هاي بهبود يافته Firmware دستگاه‌هاي توليدي خود مي‌نمايد.

    توجه داشته باشيد كه ممكن است در زمان استفاده از درايو نوري خود، هرگز متوجه مشكلات موجود نشويد، اما مطمئن باشيد اگر با روشي كه در ادامه معرفي خواهد شد، آگاهي يافتيد كه Firmware بروز شده‌اي از سوي توليد كننده ارائه شده است، به طور حتم مشكل يا مشكلاتي در Firmware دستگاه وجود دارد. بنابراين مي‌توانيد اقدام به بروز‌كردن دستگاهتان كنيد.

    مراحل كار

    اول از همه بايد نوع و مدل درايو موجود را تشخيص دهيد. براي اين‌كار بهتر است از خود ويندوز كمك بگيريد. البته نرم‌افزارهايي هم وجود دارند كه به بررسي سخت‌افزارهاي نصب شده روي كامپيوتر مي‌پردازند و نشان تجاري، مدل و اطلاعات مختلفي از جمله نگارش و مدل Firmware هر دستگاه را به شما ارائه مي‌دهند.

    از قسمت System Properties تب Hardware را انتخاب نماييد و روي دكمه Device Manager كليك كنيد. روي علامت (+) عبارت DVD/CD-ROM Drives كليك كنيد. فهرست درايوهاي نوري موجود روي كامپيوترتان را مشاهده خواهيد كرد. در اين فهرست نام هر دستگاه به همراه مدل آن آورده شده است. به عنوان مثال، به چنين عبارتي برخورد خواهيد كرد:

    SONY DVD RW DRU-۸۲۰۸A
    اين عبارت علاوه بر نام توليد‌كننده، نوع و مدل دستگاه را نيز نمايش مي‌دهد. اگر از اين روش لذت نمي‌بريد، مي‌توانيد از Nero كمك بگيريد. در مجموعه نرم‌افزاري Nero، برنامه‌اي به نام Nero Info Tool وجود دارد كه از همان ابزارهايي است كه تمام زير‌و‌بم‌‌هاي موجود و مرتبط با درايوهاي نوري را بررسي مي‌كند. مزيت استفاده از اين ابزار اين‌است كه نگارش Firmware درايو را نيز نمايش مي‌دهد.

    پس از اين‌كه اطلاعات مورد نظر را استخراج كرديد، به اينترنت متصل شويد و در موتور جست‌و‌جوي گوگل، از كليد‌واژه تركيبي زير براي يافتن فايل مورد نظر استفاده كنيد:

    Properties + Firmware + Download&Your Drive name

    در عبارت بالا به جاي Your Drive name & Properties نام و مدل دستگاهتان را كه در مرحله قبل استخراج كرديد، بنويسيد. به عنوان مثال، من براي DVD Writer خود بايد چنين واژه‌اي را جست‌و‌جو كنم:

    SONY DVD RW DRU-۸۲۰A + Firmware + Download

    توجه كنيد كه تنها قسمت اول را تغيير دهيد. با اين‌كار (استفاده از اين كليدواژه) گوگل در سايت‌هايي جست‌و‌جو خواهد كرد كه حاوي لينك‌هايي به منابعي هستند كه شامل آن سه كليد واژه ذكر شده مي‌گردند. مطمئن باشيد كه اولين يا دومين هينت (نتيجه يك جست‌و‌جو در يك موتور جست‌و‌جو، تعدادي هينت يا تطابق است كه به صورت فهرست شده نمايش داده مي‌شوند) شما را به هدف خواهد رساند.

    معمولاً تمام تلاش‌هاي ما سرانجام به دانلود يك فايل چندصد كيلوبايتي منتهي خواهد شد. توجه داشته باشيد كه علاوه بر خود توليد كننده، شركت‌ها و حتي اشخاص ديگري نيز اقدام به تهيه Firmware براي دستگاه‌ها مي‌نمايند. بر اساس تجربه بهتر است از نسخه‌اي استفاده كنيد كه توسط خود سازنده ارائه شده است.

    پس از اين‌كه فايل يا فايل‌ها را دانلود كرديد، زماني فرا مي‌رسد كه ‌بايد مهم‌ترين و شايد خطرناك‌ترين قسمت كار را انجام دهيد. در اين مرحله بايد يك فايل اجرايي را اجرا كنيد تا روند آپديت‌كردن بايوس به صورت خودكار طي شود. البته قبل از انجام هركاري، روشي را كه سازنده اعلام كرده است، به دقت مطالعه كنيد. ممكن است براي اين كار لازم باشد تغييراتي را به صورت موقت در آرايش سخت‌افزاري كامپيوترتان اعمال كنيد. ممكن است نياز باشد زماني كه شما دو درايو را به يك كابل متصل كرده‌ايد، يكي را از كابل موقتاً جدا نماييد و پس از آپديت شدن بايوس درايو مورد نظرتان، دوباره درايو ديگر را به كابل متصل كنيد.

    با اين حال قدر مسلم اين است كه دقت داشته باشيد فارغ از نوع و مدل دستگاه، زماني كه برنامه مشغول آپديت كردن بايوس درايوتان است (كه مدت زمان اندكي است) هرگز برنامه‌هاي ديگري را اجرا نكنيد. قبل از اجرا، اتصال به اينترنت خود را قطع نماييد و برنامه آنتي‌ويروس خود را نيز غير‌فعال كنيد. همچنين هر نوع CD و يا DVD را از درايو خارج كنيد.

    دقت كنيد كه ممكن است در طي اين زمان چراغ‌ يا چراغ‌هاي روي درايو روشن شوند يا چشمك بزنند. اين عمل غير عادي نيست. تعجب نكنيد و هرگز اقدام به باز كردن درِ درايو نكنيد. همچنين سعي كنيد برق كامپيوتر قطع نشود! چون ممكن است مجبور شويد درايو را براي تعمير به گارانتي بفرستيد يا در بدترين شكل ممكن، مجلس ختمي براي درايو محبوبتان برگزار كنيد.

    اما از هيچ چيز نترسيد. شخصاً بارها اين‌كار را انجام داده‌ام و حتي درايوهاي دوستان و آشنايان را نيز از اين آزمايش‌ها گذرانده‌ام. خيالتان راحت باشد. اين كار را اگر بر اساس روشي كه از سوي توليد‌كننده ارائه شده است انجام دهيد، هيچ مشكلي براي درايو‌تان به وجود نخواهد آمد.

    پس از اين‌كه Firmware درايوتان را آپديت كرديد، مطمئناً درايوتان بي‌عيب و نقص‌تر از گذشته كار خواهد كرد، اما انتظار نداشته باشيد كه فرآيند رايت كردن اطلاعات با سرعت بيشتري انجام شود يا سخت‌افزار دستگاهتان تغيير كند. اما مطمئنا خطاهاي كمتري در زمان خواندن و نوشتن انواع ديسك‌ها بروز خواهد نمود.

    منبع

     

     |+| نوشته شده در  جمعه دهم اسفند 1386ساعت 5:41 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    راديو آلمان: سريع‌ترين ابررايانه براي اهداف غير نظامي وارد شبكه شد

    پايگاه اينترنتي راديو "دويچه وله" نوشت:سريع‌ترين ابر رايانه براي اهداف غير نظامي به ارزش ‪ ۱۵‬ميليون يورو به‌طور رسمي وارد شبكه آلمان شد.

    به گزارش اين پايگاه اينترنتي، "توماس ليپرت" رئيس مركز رايانه‌اي يوليش اعلام كرد: در فهرست برترين ابررايانه‌ها، يوجين سريع‌ترين ابر رايانه‌اي است كه براي اهداف غير نظامي مورد استفاده قرار مي‌گيرد.

    سريع‌ترين ابررايانه‌ي جهان با نام "يوجين" كه براي اهداف غيرنظامي ساخته شده است پنجشنبه گذشته در مركز تحقيقاتي يوليش در نزديكي شهر كلن آلمان، كار خود را به‌طور رسمي آغاز كرد.

    اين منبع گزارش كرد: "ابررايانه‌ي مركز تحقيقات هسته‌اي ايالات متحده‌ي آمريكا در فلوريدا كه كاربرد نظامي دارد، تنها ابررايانه‌اي است كه از يوجين سريع‌تر است.

    كيس يوجين بزرگ‌تر از آن است كه زير يك ميز كار جا بگيرد. اين ابررايانه كه ابعاد آن‌هم برازنده‌ي نامش است، از ‪ ۶۵‬هزار پردازنده تشكيل شده است و اين پردازنده‌ها در ‪ ۱۶‬محفظه قرار داده شده‌اند كه هر محفظه به بزرگي يك كيوسك تلفن عمومي است.

    يوجين به همراه يومپ و يوبل، دو ابررايانه‌ي ديگر مركز تحقيقاتي يوليش، در يك سالن بزرگ جاي گرفته است.

    بازديدكنندگان از اين سالن بايد گوشي روي گوش‌هاي خود بگذارند زيرا تعداد زيادي دستگاه تهويه و دمنده در اين سالن، هوا را در قفسه‌ها تهويه مي‌كنند.

    هر محفظه در حدود ‪ ۳۰‬كيلووات گرما توليد مي‌كند، دستگاه‌هاي تهويه دائم كار مي‌كنند تا دماي ‪ ۱۶‬درجه‌ي سانتيگراد را براي يوجين فراهم كنند، اين دما، دمايي است كه اين ابر رايانه بهترين بازده را در آن دارد.

    يوجين قادر است در هر ثانيه ‪ ۲۲۳‬هزار ميليارد محاسبه انجام دهد، رقمي غير قابل تصور كه معادل سرعت محاسبه‌ي ‪ ۲۰‬هزار رايانه است.

    مي‌توان اين‌طور تصور كرد كه هر كدام از هفت ميليارد نفر جمعيت كره‌ي‌زمين در يك ثانيه و به‌طور هم‌زمان، ‪۳۰‬هزار محاسبه‌ي رياضي را انجام دهند.

    البته اين محاسبه به‌طور حتم ‪ ۱+۱‬نخواهد بود بلكه محاسبات پيچيده‌تر اعشاري يا چيزي شبيه آن. چنين بازدهي بدون شك از توان يك پردازنده خارج است.

    در يوجين هر پردازنده، يك بخش از كار را انجام مي‌دهد، به‌همين دليل مهم‌ترين نكته در يك ابررايانه اين است كه شبكه‌اي منسجم بتواند نتيجه‌ي محاسبات پردازنده‌ها را به‌صورت يك خروجي ارائه دهد.

    شبكه‌ي ارتباطي بين پردازشگرها بايد پايدار و بسيار سريع باشد تا بتواند داده‌ها را دائم از يك پردازنده به ديگري منتقل كند.

    از اين پس حدود ‪ ۲۰۰‬گروه تحقيقاتي آلماني و اروپايي مي‌توانند در پروژه‌هاي خود روي كمك يوجين حساب كنند.

    يك هيئت نظارت مستقل تصميم مي‌گيرد كه كدام پروژه اولويت دارد.

    شبيه‌سازي‌هاي رايانه‌اي اكنون مدت‌هاست كه در كنار نظريه و آزمايش، ركن سوم دانش را تشكيل مي‌دهند.

    يكي از كارشناساني كه پايان‌نامه‌ي دكتري خود را در مركز محاسبات يوليش مي‌نويسد، معتقد است: وقتي دارويي توليد مي‌شود، آزمايش‌هاي بيشماري بايد روي آن صورت گيرد تا وارد بازار شود.

    انجام اين آزمايش‌ها در دنياي واقعي، هزينه‌ي بسيار هنگفتي در بر خواهد داشت، بدين ترتيب با شبيه‌سازي‌هاي رايانه‌اي دست‌كم مشخص مي‌شود كه كار در چه جهتي پيش مي‌رود.

    وي در مثال ديگري ادامه مي‌دهد: زماني‌كه يك ستاره‌شناس نياز به يك آزمايش دارد، آوردن يك ستاره، روي ميز كار آزمايشگاه فيزيك، براي او بسيار بسيار گران تمام خواهد شد، وانگهي اين‌كار ميلياردها سال نيز طول خواهد كشيد.

    به‌همين خاطر آزمايش‌هاي رايانه‌اي از اهميت خاصي برخوردارند.

    كارشناس ديگري در حال انجام آزمايشي در زمينه‌ي فيزيك كوانتوم است. وي و هم‌كارانش در حال بررسي قوي‌ترين نيروي طبيعت هستند.

    نيروي قدرتمند هسته‌ي اتم كه كوارك را به نوترون يا پروتون پيوند مي‌دهد و آنها را در هسته‌ي اتم نگه مي‌دارد.

    آزمايش در اين زمينه، در آزمايشگاه و با روش‌هاي موجود، قابل انجام نيست. جايي‌كه فيزيك از پاسخ باز مانده است، رايانه تنها راه‌حل موجود به‌نظر مي‌رسد.

    مدير موسسه‌ي يوليش، مزيت اصل اين ابررايانه را در مقايسه با هم‌نوعان خود، صرفه‌جويي قابل توجه در مصرف انرژي در برابر توانايي آن در محاسبه مي‌داند. او از اين نظر يوجين را يك ابر رايانه‌ي سبز مي‌داند.

    اين‌كه آيا يوجين جايگاه ممتاز خود را در ميان ابررايانه‌هاي ديگر طولاني‌مدت حفظ خواهد كرد، جاي سوال است.

    هم‌اكنون مهم‌ترين رقيب يوجين، "رنجر" ، ابررايانه‌ي دانشگاه تگزاس آمريكا است كه به زودي كار خود را آغاز خواهد كرد.

    به گفته‌ي يكي از مديران موسسه‌ي يوليش، هر سال دو بار ليست ‪۵۰۰‬ ابررايانه‌ي برتر دنيا منتشر مي‌شود كه در طول سال‌هاي اخير هر بار همواره ‪ ۲۵۰‬تا ‪ ۳۰۰‬رايانه‌ي جديد وارد ليست شده‌اند.

    بنابراين نبايد از آمدن رايانه‌ي سريع‌تري تعجب كرد."

     

     |+| نوشته شده در  سه شنبه هفتم اسفند 1386ساعت 11:57 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    ZoneSrb_300x182.jpg

    SRBThe SDSC Storage Resource Broker – supports shared collections that can be distributed across multiple organizations and heterogeneous storage systems. The SRB can be used as a Data Grid Management System (DGMS) that provides a hierarchical logical namespace to manage the organization of data (usually files).

    The SRB software infrastructure can be used to enable Distributed Logical File Systems, Distributed Digital Libraries, Distributed Persistent Archives, and Virtual Object Ring Buffers. The most common usage of SRB is as a Distributed Logical File System (a synergy of database system concepts and file systems concepts) that provides a powerful solution to manage multi-organizational file system namespaces.

    SRB presents the user with a single file hierarchy for data distributed across multiple storage systems. It has features to support the management, collaboration, controlled sharing, publication, replication, transfer, and preservation of distributed data. The SRB system is middleware in the sense that it is built on top of other major software packages (file systems, archives, real-time data sources, relational database management systems, etc). The SRB has callable library functions that can be utilized by higher level software. However, it is more complete than many middleware software systems as it implements a comprehensive distributed data management environment, including end-user client applications ranging from Web browsers to Java class libraries to Perl and Python load libraries.

    منبع : http://www.sdsc.edu/srb/index.php/Main_Page

     

     |+| نوشته شده در  یکشنبه پنجم اسفند 1386ساعت 10:41 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    What is OGSA-DQP?

    OGSA-DAI components are either data access components or data integration components. A Distributed Query Processing (DQP) system is an example of a data integration component and can potentially provide effective declarative support for service orchestration as well as data integration. The service-based DQP framework described in [1],[2] provides an approach that:

    • supports queries over OGSA-DAI data services and over other services available on the Grid, thereby combining data access with analysis;
    • adapts techniques from parallel databases to provide implicit parallelism for complex data-intensive requests; and
    • uses the emerging standard for Grid data services to provide consistent access to database metadata and to interact with databases on the Grid.

    The service-based DQP framework consists of the following two services:

    • Grid Distributed Query Service (Coordinator). The Grid Distributed Query Service (GDQS), or coordinator, is the main interaction point for the clients. When a coordinator is set up, it obtains the metadata and computational resource information that it needs to compile, optimise, partition and schedule distributed query execution plans over multiple execution nodes in the Grid. The implementation of the coordinator builds on a previous work on the Polar* distributed query processor for the Grid [3],[4] by encapsulating its compilation and optimisation functionality. The coordinator is currently implemented as a set of OGSA-DAI data service resources and activities.

    • Query Evaluation Service (Evaluator). The Query Evaluation Service (QES), or evaluator, is used by the coordinator to execute query plans generated by the query compiler, optimiser and scheduler. Each evaluator evaluates a partition of the query execution plan assigned to it by a coordinator. A set of evaluators participating in a query form a tree through which the data flows from leaf evaluators which interact with Grid data services, up the tree to reach its destination.

    As well as using the services provided by OGSA-DAI data services, the coordinator is itself implemented as an OGSA-DAI data service, and thus can be discovered and invoked in the same way as other OGSA-DAI data services. Consequently, the Grid stands to benefit from OGSA-DQP, through the provision of facilities for declarative request formulation that complement existing approaches to service orchestration, via uniform interfaces and interaction semantics.

    Figure 1 provides an overview of the interactions during the instantiation and set-up of a OGSA-DQP coordinator as well as those that take place when a query is received and processed via a set of evaluators. The components in this figure and the numbered interactions between each component are now described. The 3-dot sequence in this figure can, as usual, be read as `and so on, up to'. This description of OGSA-DQP is intended to give a high level overview of the system.

    Setting up and executing queries using OGSA-DQP


    Figure 1: Setting up and executing queries using OGSA-DQP

    1: An OGSA-DQP coordinator consists of two types of OGSA-DAI data service resources: GDQS factory data service resources and GDQS data service resources. Initially, an installed coordinator service will expose only a GDQS factory data service resource. This data service resource is then used to create GDQS data service resources which can be used by a client to execute queries.

    In this first step in the interaction between a client and OGSA-DQP, the client uses a deployed GDQS factory data service resource to create a configured GDQS data service resource. The client interacts with the GDQS factory data service resource by sending an OGSA-DAI perform document which specifies that a DQPFactory activity should be executed. The DQPFactory activity is able to interact with a GDQS factory data service resource in order to dynamically deploy a GDQS data service resource. The DQPFactory activity is parameterised by an XML document which specifies exactly how the deployed GDQS data service resource should be configured. Configuration parameters include the databases and evaluators which can be utilised by the data service resource which is to be created. The result of this interaction is that a GDQS data service resource is created and initialised. The coordinator service now exposes this dynamically deployed GDQS data service resource and it is automatically assigned a resource ID by OGSA-DAI.

    2: During the initialisation of the GDQS data service resource, the schemas of the databases it will use are imported by contacting the OGSA-DAI data services which wrap these databases.

    3: The client receives the result of the perform document submitted in step 1. This result contains the resource ID needed by the client to identify the created GDQS data service resource in subsequent interactions with this data service resource.

    [Note] steps 1-3 need not take place if a GDQS data service resource already exists which imports the databases and analysis services required by a client (if this is the case, the client should contact the existing GDQS data service resource directly). Each GDQS data service resource is able to process multiple concurrent queries and the GDQS data service resource is not terminated by a client following a query session. Steps 1-3 represent a setup process which is necessary to configure a GDQS data service resource for use by one or more clients.

    4: The client submits a perform document containing a query. Queries are written in OQL and are executed by the OQLQueryStatement activity. The GDQS data service resource uses the Polar* query compiler to parse, optimise and schedule the query. A query plan is created, consisting of a number of partitions. Each partition specifies an individual evaluator's role in the query plan.

    5: Query partitions are sent to the relevant evaluator services.

    6: Some evaluators interact directly with OGSA-DAI data service to obtain data.

    7: Other evaluators may interact with other evaluators to implement their role in the execution of the query.

    8 - 9: Results propagate back from the evaluators to the coordinator and eventually back to the client.

    [Note] OGSA-DQP is also able to invoke Web services from within queries. This is not illustrated in Figure 1 in order to preserve the clarity of the figure and its associated description. Also omitted from the figure are the resource properties made available by the GDQS data service resource. Following initialisation, the GDQS data service resource provides a resource property enabling the client to obtain a description of the database schemas imported by OGSA-DQP.

    References

    [1] M. N. Alpdemir, A. Mukherjee, N.W. Paton, P.Watson, A. A. Fernandes, A. Gounaris, and J. Smith. Service-based distributed querying on the grid. In the Proceedings of the First International Conference on Service Oriented Computing, pages 467-482. Springer, 15-18 December 2003.

    [2] M.Nedim Alpdemir, Arijit Mukherjee, Norman W. Paton, Paul Watson, Alvaro A.A. Fernandes, Anastasios Gounaris, and Jim Smith. OGSA-DQP: A service-based distributed query processor for the Grid. In Simon J. Cox, editor, Proceedings of UK e-Science All Hands Meeting Nottingham. EPSRC, 24 September 2003.

    [3] J. Smith, A. Gounaris, P. Watson, N. W. Paton, A. A. A. Fernandes, and R. Sakellariou. Distributed Query Processing on the Grid. In Proc. Grid Computing 2002, pages 279-290. Springer, LNCS 2536, 2002.

    [4] J. Smith, A. Gounaris, P. Watson, N. W. Paton, A. A. A. Fernandes, R. Sakellariou, Distributed Query Processing on the Grid, Intl. J. High Performance Computing Applications, Vol 17, No 4, 353-368, 2003 (Extended Version of Grid 2002 paper selected for publication in special issue).

    منبع : http://www.ogsadai.org.uk/about/ogsa-dqp

     

     |+| نوشته شده در  یکشنبه پنجم اسفند 1386ساعت 10:39 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Sun Expands Grid Application Offerings
    February 19, 2008
    By Paul Shread

    Sun Microsystems has added 14 new applications to its Network.com Application Catalog of online grid-enabled applications available from the Sun Grid compute utility service on a pay-per-use basis.

    Sun also launched a new partner program, Sun Network.com Connection, for independent software vendors (ISVs) to create on-demand service offerings at lower risk and cost, with access to new sales channels. Sun also added the Netherlands to the list of 25 countries where the services can be utilized.

    The latest additions bring the grid service's total number of "Click and Run" applications to 39.

    Mark Herring, Sun's senior director of software marketing, said Network.com "is evolving into a virtual on-demand data center that allows businesses of any size to leverage compute infrastructure without the cost of ownership and with the flexibility of scaling up or down compute resources in real time as business demands change."

    The latest applications include Blender, open source tools for modeling, rendering, animation, post-production, creation and playback of interactive 3D content. Sun is sponsoring Blender Foundation's open movie "Peach," a short 3D animation by artists and developers in the Blender community, with grants of CPU hours in Network.com.

    Other new open source applications include Zeus (a life sciences application), GAP (a computational mathematics application) and OOFEM (a computer aided engineering application).

    In addition to the Solaris 10-based grid platform, Network.com provides developers and open source communities with tools, resources and an active grid developer community that helps them build and test on-demand applications.

    Sun's Network.com provides access to compute infrastructure on a pay-per-use basis via its Sun Grid compute utility at $1 per CPU hour.

    منبع : http://www.gridcomputingplanet.com

     

     |+| نوشته شده در  یکشنبه پنجم اسفند 1386ساعت 9:58 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    سیستم های مبتنی بر پردازنده‌های 4 هسته ای

    پردازنده‌هاي 4 هسته اي
    شركت اينتل اولين پردازنده چهار هسته اي خود را در اواخر سال گذشته ميلادي معرفي كرد.  واقعاً هدف اينتل از معرفي اين محصول جديد چيست؟
    شما در ماه‌هاي آينده اولين بازي‌هاي كامپيوتري كه توانايي استفاده از 4 هسته را دارند مشاهده خواهيد كرد. بازي‌هاي نظير RTS, Supreme Commander, Half-Life 2 Episode 2, Unreal Tournament 2007و Crysis كه در سال 2007 معرفي خواهند شد قادرند از تمامي توانايي‌هاي يك پردازنده 4 هسته اي استفاده كنند. علاوه بر بازي‌هاي كامپيوتري برخي از برنامه‌هاي صوتي و تصويري و برنامه‌هاي كه تصاوير سه بعدي را خلق مي‌كنند نيز نظير Adboe Premiere Pro 3.0 Pinnacle Studio 10 , و 3D Studio Max 8/9 نياز به پردازنده‌هاي چند هسته اي دارند.

    CPU جديد، هسته قبلي
    پردازنده‌هاي 4 هسته اي حال حاضر اينتل مبتني بر هسته‌ جديدي بنام Kentsfield هستند كه نخستين بار توسط اينتل در پردازنده Core 2 Extreme QX6700 بكار گرفته شد. هسته Kentsfield در حقيقت از دو هسته Conroe كه در يك بسته‌بندي قرار گرفته، تشكيل شده است.
    با توجه به اين موضوع و همانطور كه از نام پردازنده Core 2 Quad Q6600 مشخص است، اين پردازنده از دو پردازنده Core 2 Duo 6600 تشكيل شده است و پردازنده Core 2 Extreme QX6700 شامل دو پردازنده Core 2 Duo E6700 است. بنابراين Core 2 Quad Q6600 داراي فركانس 2/4 گيگاهرتز و Core 2 Extreme QX6700 داراي فركانس 2/66 گيگاهرتز است. هر دوي اين پردازنده‌ها از FSB 1066 مگاهرتز و حافظه نهان سطح 2 مگابايت (2 عدد كش 4 مگابايتي) استفاده مي‌كنند.
    در آزمايشات انجام گرفته روي پردازنده‌هاي چهار هسته اي، در برخي از بازي‌ها پردازنده‌ي چهار هسته اي QX6700 كارايي دو برابر سريع‌تر از پردازنده Core 2 Duo E6700 از خود به نمايش گذاشته است و در چندين آزمايش نيز كارايي دو برابر پردازنده Core 2 Extreme X6800 ارايه كرده است.

    پردازنده‌هاي 4 هسته اي داراي مصرف برق متفاوتي نسبت به پردازنده‌هاي دو هسته اي هستند. اين توان متفاوت موجب شده تا اكثر مادربردها‌ي كه از پردازنده‌هاي Core 2 Duo پشتيباني مي‌كنند قادر به پشتيباني از پردازنده‌هاي چهار هسته اي نباشند. بنابراين اگر قصد خريد پردازنده 4 هسته اي داريد و يا اگر به فكر ارتقا پردازنده سيستم‌تان در آينده هستيد حتماً در هنگام خريد مادربرد به قابليت پشتيباني از پردازنده‌هاي 4 هسته اي آن توجه كنيد.

    شركت گيگابايت يكي از چند سازنده مطرح مادربرد است كه در حال حاضر محدوده وسيعي از مادربردهايي را كه قادرند تا از پردازنده‌هاي 4 هسته اي پشتيباني كنند  معرفي كرده است.
    از بين مادربرد‌هاي موجود در اين ليست مادربرد 965P-DQ6 قادر است از پردازنده‌هاي 4 هسته ا‌‌ي آينده اينتل نيز پشتيباني كند. اين مادربرد از چيپست 965P اينتل استفاده كرده و داراي خازن‌هاي حالت جامد است. اگر به مادربردهاي موجود در ليست بالا دقت كنيد متوجه خواهيد شد كه تمامي مادربردهاي موجود در اين ليست بجاي خازن‌هاي الكتروليتي از خازن‌هاي حالت جامد استفاده كرده‌اند.

    منبع : http://www.avajang.com

     

     |+| نوشته شده در  یکشنبه پنجم اسفند 1386ساعت 9:35 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    How to Rank High Throughput Computing Enviroments

    engine_000005010235XSmall.jpg

    TOP500 lists computers ranked by their performance on the LINPACK Benchmark. It is clear that no single number can reflect the performance of a computer. Linpack is, however, a representative benchmark to evaluate computing platforms as High Performance Computing (HPC) environments, that is in the dedicated execution of a single tightly coupled parallel application. On the other hand, an HTC application comprises the execution of a set of independent tasks, each of which usually performs the same calculation over a subset of parameter values. Although, the HTC model is widely used in Science, Engineering and Business, there is not representative bechmark and model to evaluate the performance of computing platforms as HTC environments. At first sight, it could be agued that there is no need for such a performance model. We agree on this for static and homogeneous systems. However, how can we evaluate a system consisting of heterogeneous and/or dynamic components?.

    Benchmarking of Grid infrastructures has always been a highly polemic area. The heterogeneity of the components and the high number of layers in the middleware stack make difficult even to define the aim and scope of the benchmark. A couple of years ago we wrote a paper entitled "Benchmarking of High Throughput Computing Applications on Grids" (R. S. Montero, E. Huedo and I. M. Llorente) for the Parallel Computing Journal presenting a pragmatic approach to evaluate the performance of a Grid infrastructure when running High Throughput Computing (HTC) applications. We demonstrated that the complexity of a whole Grid infrastructure can be represented by only two performance parameters, which can be used to compare infrastructures. The proposed performance model is independent from the middleware stack and valid for any computing infrastructure, so being also applicable for the evaluation of clusters and HPC servers.

    The Performance Model

    Our proposal is to follow an approach similar to that used by Hockney and Jesshope to characterize the performance of homogeneous array architectures on vector computations. A first-order description of a Grid can be made by using the following formula for the number of tasks completed as a function of time:

    n(t)=R*t-N

    Note that given the heterogeneous nature of a Grid, the execution time of each task can differ greatly. So the following analysis is valid for general HTC applications, where each task may require distinct instruction streams. The coefficients of the line are called:

    • Asymptotic performance (R): the maximum rate of performance in tasks executed per second. In the case of an homogeneous array of P processors with an execution time per task T, we have R = P/T.
    • Half-performance length (N): the number of task required to obtain the half of the asymptotic performance. This parameter is also a measure of the amount of parallelism in the system as seen by the application. In the homogeneous case, for an embarrassingly distributed application we obtain N = P/2.

    The above linear relation  can be used to define the performance of the system (tasks completed per second) on actual applications with a finite number of tasks:

    r(n)=R/(1+N/n)

    graph.png

    Interpretation of the Parameters of the Model

    This linear model can be interpreted as an idealized representation of a heterogeneous Grid, equivalent to an homogeneous array of 2N processors with an execution time per task 2* N/R.

    equivalencia-grid-homogeneo.jpg

    The half-performance length (N), on the other hand, provides a quantitative measure of the heterogeneity in a Grid. This result can be understood as follows, faster processors contribute in a higher degree to the performance obtained by the system. Therefore the apparent number of processors (2N), from the application's point of view, will be in general lower than the total processors in the Grid (P). We can define the degree of heterogeneity (m) as 2N/P. This parameter varies form m = 1 in the homogeneous case, to m = 0 when the actual number of processors in the Grid is much greater than the apparent number of processors (highly heterogeneous).

    N is an useful characterization parameter for Grid infrastructures in the execution of HTC applications. For example, let us consider two different Grids with a similar asymptotic performance. In this case, by analogy with the homogeneous array, a lower N parameter reflects a better performance (in terms of wall time) per Grid resource, since the same performance (in terms of  throughput) is delivered by a smaller ‘‘number of processors''.

    comparacion-de-infraestructuras.jpg

    The Benchmark

    We propose the OGF DRMAA implementation of the ED benchmark in the NAS Grid Benchmark suite, with an appropriate scaling to stress the computational capabilities of the infrastructure, as benchmark to apply the performance model. The ED benchmark comprises the execution of several independent tasks. Each one consists in the execution of the SP flow solver  with a different initialization parameter for the flow field. These kind of HTC applications can be directly expressed with the DRMAA interface as bulk jobs.

    DRMAA represents a suitable and portable API to express distributed communicating jobs, like the NGB. In this sense, the use of standard interfaces allows the comparison between different Grid implementations, since neither NGB nor DRMAA are tied to any specific Grid infrastructure, middleware or tool. DRMAA is implemented with the following available Resource Manager systems: Condor, LSF, Globus GridWay, Grid Engine and PBS.

    sp-drmaa.png

    In the paper we present both an intrusive and a non-intrusive methods to obtain the performance parameters.  The light-weight non-intrusive probes provide continual information on the health of the Grid environment, and so a way to measure the dynamic capacity of the Grid, which could eventually be used to generate global meta-scheduler strategies.

    An Invitation to Action

    We have demonstrated in several publications how the first-order model reflects performance of complex infrastructures running HTC applications. So, why don't we create a TOP500-like ranking of infrastructures?. The ranking could be dynamic, obtaining the parameters with the non-intrusive probes. We have all the ingredients:

    • A model representing the achieved performance by using only two parameters: asymptotic performance (R) and half-performance length (N)
    • A benchmark representative of HTC applications: embarrassingly distributed test  included in the NAS Grid Benchmark suite
    • A standard to express the benchmark: OGF DRMAA

    Ignacio Martín Llorente
    Reprinted from blog.dsa-research.org

    منبع : http://gridgurus.typepad.com

     

     |+| نوشته شده در  شنبه چهارم اسفند 1386ساعت 7:45 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    How to Monitor Grid Engine

    world_000003129409XSmall.jpgYou have built and installed your shiny new cluster, installed the Grid Engine software, configured the queues, and announced to the world that your new system is ready to be used. What next? Well, think about your monitoring options…

    As users start submitting jobs and hammering the system in every possible way, things will inevitably break on occasion. When something goes wrong in the system, you will want to know about the problem before you start receiving help desk calls and user emails.

    The first step in developing an effective strategy for monitoring Grid Engine is learning how to use the available command line tools and how to look for possible issues in the system. Some of the things that you should always pay attention to include:
    • queues in the unknown state; instance queue in an unknown state usually means that execution daemon is down on that particular host
    • queues and jobs in the error state
    • configuration inconsistencies
    • load alarms
    All of the above information can be easily obtained using the qstat command (e.g., try something like “qstat -f -qs uaAcE -explain aAcE”). It is also not difficult to script basic GE monitoring tasks and come up with a simple infrastructure that is able to alert system administrators to any new or outstanding problems in the system.

    As your user base grows, so will your monitoring needs, and you will likely want to extend your monitoring tools. You should consider looking into existing software packages like xml-qstat, which uses XSLT transformations to render Grid Engine command line XML output into different output formats. Alternatively, you can also develop set of your own XSL stylesheets that are customized to your needs, and use widely available command line tools such as xsltproc to generate monitoring web pages from the “qstat -xml” output.

    Another interesting Grid Engine monitoring option is the Monitoring Console that comes with Cluster Express (CE). Its main advantage is that it integrates monitoring data from several different sources: Ganglia (system data), Grid Engine Qmaster and ARCo database (job data). However, even though the Cluster Express by itself is easy to install, at the moment integrating the CE Monitoring Console with existing Grid Engine installation requires a little bit of work. I am told that this will be much simplified in the upcoming CE release. In the meantime, if you are really anxious to try the CE Monitoring GUI on your Grid Engine cluster, do not hesitate to send me an email…

    منبع : http://gridgurus.typepad.com

     

     |+| نوشته شده در  شنبه چهارم اسفند 1386ساعت 7:44 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    My Head in the Clouds

    clouds_000003876801XSmall.jpg

    Up until I read Ian Foster’s Cloud Computing post, I had paid little attention to what the term meant to people.  Personally, I had already chalked up the idea as a rebranding of Grid computing.  So I asked a number of friends what they thought the differences between the two were.  Of course many people not actively involved in the community are not familiar with either concept.   (I find the fact that computer professionals know what the latest buzz is around SaaS, and SOA but do not seem to consider how and where they might land these systems peculiar.)  In any event, here is a summary of the answers I received:

    • Grid is characterized by more formalized computing arrangements between user and vendor whereas a Cloud is more for ad hoc resource utilization;
    • The types of computation on a Grid are typically parallel in nature whereas Clouds are for more simple calculations;
    • Grid was usurped by vendors to indicate that their services were distributed for better performance and reliability while Cloud had become the term for a generalized set of distributed resources;
    • Clouds are ethereal – anybody who watches them as they cross the sky knows that…

    While I found it rather interesting that while there was some overlap of technical perspectives, I did not get any answers that were identical.  I believe that the last description explains this situation nicely while also offering the most interesting take on the topic.  A Cloud is a nuanced term that invokes the idea of something beautiful which also evolves rapidly, contains a lot of power, and then is gone.  Meanwhile the grid, like the utilities it was conceived from, is known for its reliability, ability to tap into reserve power on a moments notice, as well as their accommodating levels of service.  Notice how the first two answers all adhere to this concept?  I don’t think this is an accident nor do I think that this escaped the attention of the marketing departments of industry-leaders like Amazon and Google, both of whom operate in what they term Cloud space.  While it is distinctly possible that the term organically evolved, it is interesting that they chose to stick with it.

    Once more, I found it particularly noteworthy that not one person I queried mentioned the amount of data to be processed. Foster and the Business Week article he references, as well as many others, suggest that we need to think in terms of a great deal more data than we have before.  For example, Google wants their people to think in terms of a thousand times more data than that to which they are accustomed.

    Heck, I was thinking about writing about the so-called “Data Tsunami” myself – but not in terms of thinking about significantly larger datasets. The datasets we were working with a decade ago were suitably massive for what we were trying to accomplish.  Like today, it was not economically feasible to keep it all online at once.  The fact is that the incredible leaps in computational capacity have led us to build more complicated problems that demand still more data.  As such, a thousand times more data is probably still not enough.  If only the networking and storage companies had kept up with the leaps in processing capacity (I was on a gigabit network five years ago and I am using a gigabit network today >sigh<).

    Consequently we still have to use the tried and true standard operating procedure of:

    • First carefully selecting a fraction of the data available for storage (i.e. triggering);
    • Next this rough dataset is pruned further by pre-processing to find the most interesting records;
    • Finally detailed analysis is performed on what is computationally feasible.

    For example, the Large Hadron Collider will be examining billions of collisions per second but will only store a few hundred per second for later processing (see recent article on Dr. Heuer). We have always needed to think in terms of a thousand times more data than we can possibly process or to become accustomed.  Basically the scope of what is economically feasible has changed dramatically over the last few decades, while we continue to be quite resource constrained.  Which brings us back to the concept of capacity computing, whether in the form of a transitory Cloud, a steadfast Grid, or even the comfortable @home project.  The key here is that people are continuing to push passed the boundaries of what is feasible.

    منبع : http://gridgurus.typepad.com

     

     |+| نوشته شده در  شنبه چهارم اسفند 1386ساعت 7:42 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    The Hot Trend for 2008

    abacus_000002770572XSmall.jpgFortune 400 businesses, and many smaller ones, run clusters in many different locations around the world.
    As facility, management and other costs continue to become larger and large shares of corporate IT budgets, networking costs continue to fall. The result is that data center consolidation becomes a more reasonable goal.

    I've seen this in a few of my customers. Beginning last year people started looking more toward grid technology to help them manage this. As the economy has tightened more people have considered this. Particularly as part of a plan toward cost reduction by moving to open source tools.

    The general pattern is that the IT group decides they need to find ways to more effectively manage large and disconnected sets of resources. They turn to grid computing to help them manage that cloud and in the process realize that they have a lot of special purpose machines that are being quite underutilized and that they have enormous duplication of effort in the management of those data centers.

    As we've entered into a bear market, many companies are taking a second look at their IT costs and looking for ways to tighten their belts. The combination of open source and grid/cloud computing models offers the ability to do that with open source offering a lower cost software acquisition model and grid computing allowing reduction in IT staff through centralization.

    I've also been working with folks on the lost art of environment management. But more on that in a future blog...

    منبع : http://gridgurus.typepad.com

     

     |+| نوشته شده در  شنبه چهارم اسفند 1386ساعت 7:39 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    محققان "اي.بي.ام" نيروي لازم براي حركت دادن يك اتم را اندازه گرفتند

    محققان آمريكايي و آلماني براي نخستين بار موفق شدند نيروي لازم براي حركت دادن اتم‌هاي مجزا روي يك سطح را اندازه بگيرند.

    به گزارش خبرگزاري يونايتدپرس از سن خوزه، محققان "مركز تحقيقات آلمادن" آي.بي.ام در سن خوزه واقع در كاليفرنيا و "دانشگاه ريجينس‌بورگ" در آلمان گفتند، دستاورد بزرگ آنها اطلاعات زيربنايي درباره ساخت در مقياس اتم ارائه مي‌دهد.

    به گفته آنان با پيشرفت‌هاي بيشتر در جهت فناوري‌هاي پزشكي و رايانه‌اي در مقياس نانو، يافته جديد مي‌تواند به ساخت ابزار جديد ذخيره اطلاعات در ابعاد مينياتوري و تراشه‌هاي كامپيوتري منجر شود.

    اين تحقيق نشان مي‌دهد نيروي لازم براي تكان دادن يك اتم كبالت بر روي يك سطح صاف پلاتين ‪ ۲۱۰‬پيكونيوتن است در حاليكه تكان دادن يك اتم كبالت بر روي يك سطح مس تنها ‪ ۱۷‬پيكونيوتن نيرو لازم دارد.

    براي مجسم ساختن اين موضوع دانشمندان گفتند، نيروي لازم براي بلند كردن يك پني مسي كه تنها سه گرم وزن دارد حدود ‪ ۳۰‬ميليارد پيكونيوتن است.

    محققان گفتند، توانايي اندازه‌گيري نيروي لازم براي تكان دادن اتم‌هاي مجزا دريچه تازه‌اي را به روي فعاليت‌هاي ساخت و عمليات اتم به اتم براي ابداع ابزارهاي نانو در آينده باز مي‌كند.

    اين كشف در مجله "علوم" منتشر شده است.

    منبع : http://www1.irna.com/fa/news/view/menu-152/8612045709124352.htm


     

     |+| نوشته شده در  شنبه چهارم اسفند 1386ساعت 7:29 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
    دانلود مجموعه مقالات سومین کنفرانس بین المللی فناوری اطلاعات و دانش

    آدرس : http://www.esnips.com/web/IKT07

     

     |+| نوشته شده در  شنبه چهارم اسفند 1386ساعت 5:54 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Globus?Toolkit 4, : Programming Java Services (The Elsevier Series in Grid Computing)


    Globus?Toolkit 4, : Programming Java Services (The Elsevier Series in Grid Computing)Publisher: Morgan Kaufmann; 1 edition
    Language: English
    ISBN: 0123694043
    Paperback: 506 pages
    Data: December 16, 2005
    Format: PDF
    Description: The Globus Toolkit (http://www.globus.org/toolkit/) is a key technology in Grid Computing, the exciting new computing paradigm that allows users to share processing power, data, storage, and other computing resources across institutional and geographic boundaries. Globus Toolkit 4: Programming Java Services provides an introduction to the latest version of this widely acclaimed toolkit. Based on the popular web-based The Globus Toolkit 4 Programmer's Tutorial, this book far surpasses that document, providing greater detail, quick reference appendices, and many additional examples. If youre making the leap into Grid Computing using the Globus Toolkit, youll want Globus Toolkit 4: Programming Java Services at your side as you take your first steps.
    + Written for newcomers to Globus Toolkit, but filled with useful information for experienced users.
    + Clearly situates Globus application development within the context of Web Services and evolving Grid standards.
    + Provides detailed coverage of Web Services programming with the Globus Toolkit's Java WS Core component.
    + Covers basic aspects of developing secure services using the Grid Security Infrastructure (GSI).
    + Uses simple, didactic examples throughout the book, but also includes a more elaborate example, the FileBuy application, that showcases common design patterns found in Globus applications.
    + Concludes with useful reference appendices.

    Download - (5 Mb)

    http://www.icefile.info/index.php?page=main&id=6c6ee2259&name=0123694043.rar

     

     |+| نوشته شده در  جمعه سوم اسفند 1386ساعت 7:51 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
    کلاستر با openMOSIX

    به نقل از سایت : http://barnamenevis.org

    من یه چند ماهی میشه که دارم رو مبحث کلاسترینگ کار میکنم و تو همین چند ماه کاربا لینوکس رو بصورت حرفه ای شروع کردم(البته هنوز چیز قابل توجه از لینوکس بلد نیستم). و یه چند روزی میشه که با openMosix سه تا از کامپیوترهای site دانشگاه کلاستر کردم که این 3 کامپیوتر به وسیله یک سوئیج بطور مستقل از سایر کامپیوتر ها به هم متصل هستن که مشخصاتشون به شرح زیر هست (کرنل هر سه سیستم 2.4.26 و توزیع هر سه REDHAT9 می باشد):



    Node 1:
    • CPU: P4,2.66 GHZ
    • RAM:256
    • NIC:10/100
    Node 2:
    • Cpu:P4,1.8 GHZ
    • RAM:256
    • NIC:10/100
    Node 3:
    • Cpu:P4,2.66 GHZ
    • RAM:512
    • NIC:10/100


    بعد از بر پا سازی کلاستر و آزمایش اون زیر بار ،با نتایج غیر قابل انتظار و عجیبی رو برو شدم.طبق نتایج زیر استفاده از openmosix باعث میشه که پردازش کندتر صورت بگیره !!! فکر میکنید علت از چیزه ؟ از سخت افزار خاصی هست یا دلیل دیگه ای داره؟
    در آزمایش اول و دوم ، 3 و سپس 9 فایل wave با نرم افزار lame به شرح زیر به mp3 تبدیل شدن و در آزمایش سوم دو for تو در تو (10000 × 10000) اجرا شده که در دو آزمایش اول openMosix کندتر عمل کرده ولی در سومی سریعتر.
    Node اجرائی (نودی که آزمایش ها روی اون صورت گرفته) Node 1 می باشد.

    تبدیل 3 فایل Wave به MP3 (به حجم زیر):

    1- 35.4 MB

    2- 48.8 MB
    3- 43.3 MB


    با استفاده از OPENMOSIX:
    اجرای همزمان تمامی فایل ها : 2:44.7 دقیقه
    اجرای ترتیبی و پشت سر هم : 4:17.4 دقیقه
    بدون استفاده از OPENMOSIX :
    اجرای همزمان تمامی فایل ها : 1:50.7 دقیقه

    اجرای ترتیبی و پشت سر هم : 1:35 دقیقه


     


    تبدیل 9 فایل Wave به MP3 (به حجم زیر):

    1- 35.4 MB

    2- 48.8 MB
    3- 43.3 MB
    4- 33.0 MB
    5- 37.8 MB
    6- 43.0 MB
    7- 17.6 MB
    8- 36.0 MB
    9- 42.0 MB


    با استفاده از OPENMOSIX :
    اجرای همزمان تمامی فایل ها : 6:18.4 دقیقه
    اجرای ترتیبی و پشت سر هم : 12:12.0 دقیقه
    بدون استفاده از OPENMOSIX :
    اجرای همزمان تمامی فایل ها : 4:16.7 دقیقه

    اجرای ترتیبی و پشت سر هم : 4:12.7 دقیقه

     


    اجرای دو FOR تودرتو (10000× 10000) :

    با استفاده از OPENMOSIX :

    0: 59 دقیقه
    بدون استفاده از OPENMOSIX :
    2.33.3 دقیقه
     
     
     
     |+| نوشته شده در  جمعه سوم اسفند 1386ساعت 6:6 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    با کامپيوتر قديمی خود يک Router بسازيد

    سخت افزار مورد نياز

    برای تهيه اين دستگاه به يک کامپيوتر قديمی (مانند ٤٨٦) نياز داريد. سرعت کامپيوتر مهم نيست ولی دو کارت شبکه در آن لازم داريد. اگر مودم شما به روش ديگری نصب ميشود (مانند مودمهای USB) يک کارت شبکه کافی است ولی بايد علاوه بر اين کارت شبکه (که به کامپيوترهای ديگر وصل خواهد شد) راه ديگری برای ارتباط بين مودم و اين کامپيوتر باشد. برای نرم افزاری که استفاده می کنيم يک ديسکت درايو (floppy) لازم است.



    تهيه و نصب نرم افزار

    من از Coyote Linux استفاده می کنم. اين برنامه روی يک ديسکت نصب می شود و برای تهيه اين ديسک بايد نسخه ای از Coyote Linux برای ويندوز يا لينوکس را از http://www.coyotelinux.com دريافت کنيد. نسخه لينوکس پدقدرت تر است و روی کامپيوترهای قديمی تر از ٤٨٦ نيز اجرا می شود ولی برای افراد مبتدی نسخه ويندوز را توصيه می کنم که آسانتر نصب می شود و در اين مقاله آنرا را توضيح می دهم:

    بعد از اينکه فايل ZIP را دريافت کرديد آنرا با برنامه ای مانند FilZip بازکرده و فايل coyote.exe را اجرا کنيد. متن کوچکی درباره برنامه می بينيد. روی Next کليک کنيد تا به صفحه بعدی برويد. در اين صفحه هم چيزی را تغيير ندهيد و به صفحه بعدی برويد چون تنظيمات انتخاب شده خوب و استاندارد هستند.

    در صفحه بعدی اگر از Cable استفاده می کنيد و بايد برای ارتباط با اينترنت از نام کاربر و رمز استفاده کنيد “My area requires me to Log in” را انتخاب کنيد. اين انتخاب در تورنتو لازم نيست.

    صفحه بعدی بايد براساس تنظيمات سرويس اينترنت تنظيم شود. اين اطلاعات را ميتوانيد از شرکتی که به شما سرويس می دهد بپرسيد. معمولا برای Cable بايد DHCP را انتخاب کنيد. برای DSL بايد PPPoE و برای خط تلفن PPP Modem Dialup را انتخاب کنيد.

    در صفحه بعد “Enable the DHCP Server” را انتخاب کنيد تا کامپيوترهای ديگر آسانتر تنظيم شوند.

    در صفحه بعدی بايد دو کارت شبکه را انتخاب کنيد که اولی به کامپيوترهای ديگر وصل می شود و دومی به مودم. فقط کافی است که Card Type را انتخاب کنيد. اگر کليد Select را فشار دهيد می بينيد که کدام نوع کارت به کارت شبکه شما مربوط می شود. اگر روی کارتهای شبکه را بخوانيد نام کارت را می بينيد. اطلاعاتی که در ليست “Card Type” هستند معمولا روی آی سی اصلی کارت نوشته شده اند و اگر آنرا پيدا کرديد نيازی به پيدا کردن نام کارت در ليست نيست.

    در صفحه بعدی می توانيد ديسکت را تهيه کنيد. حالا بايد اين ديسک را در داخل کامپيوتر گذاشته و آنرا روشن کنيد. کامپيوتر هنگام روشن شدن از ديسکت استفاده می کند و اطلاعات را در حافظه قرار می دهد تا نياز به استفاده دائم از ديسکت نباشد. شما می توانيد اين کامپيوتر را روشن نگهداريد.

    برای تنظيم سيستم بايد با نام کاربر “root” وارد شويد. در اينجا اگر کارت های شبکه را درست انتخاب کرده باشيد با فشردن کليد “c” اطلاعاتی در مورد شبکه می بينيد.

    اگر مايل باشيد با فشردن کليد “5” ميتوانيد امکان استفاده از سيستم از طريق کامپيوترهای ديگر درشبکه را ايجاد کنيد. با اين کار نيازی به استفاده از مانيتور و صفحه کليد برای اين کامپيوتر نخواهد بود. اگر اين گزينه را انتخاب کرديد حتما با فشردن کليد “4” برای سيستم رمز عبور وارد کنيد تا افراد بيگانه وارد سيستم نشوند. هر تغييری که در سيستم می دهيد را با فشردن کليد “b” روی ديسکت ذخيره کنيد. برای ورود به سيستم از کامپيوتر ديگر بايد از telnet:192.168.0.1 استفاده کنيد. البته به اين کارها زمانی نياز داريد که بدانيد چکار می کنيد در غير اينصورت در صورت هرگونه تغيير در شبکه يا سرويس اينترنت خود ميتوانيد مجددا اين ديسکت را بسازيد.

    حالا دستگاه Router خودتان را ساخته ايد. اين دستگاه با اينکه هزينه ناچيزی دارد بسيار پرقدرت است و اگرچه ميتوانيد با کمتر از ١٠٠ دلار يک دستگاه Router تهيه کنيد دستگاهی که با اين سيستم برابری می کند صدها دلار قيمت دارد. قدرت اين سيستم به حدی است که خيلی از شرکتهای بزرگ از آن استفاده می کنند.
     
     |+| نوشته شده در  پنجشنبه دوم اسفند 1386ساعت 10:2 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Nmap چيست؟

    Nmap مخفف Network Mapper ميباشد و يک نرم افزار کاربردي براي جستجوي شبکه يا مميزي امنيتي شبکه به شمار ميايد. اين نرم افزار طوري طراحي شده که شبکه هاي بزرگ را به سرعت اسکن کند، اگر چه مي تواند بر روي سيستم هاي تنها نيز بخوبي کار کند. Nmap از ip packet هاي خام بصورت منحصر بفرد استفاده مي کند تا تعيين کند چه رايانه هايي (hosts) بر روي شبکه در دسترس مي باشند، چه سرويسهايي (ports) ارائه مي کنند، چه سيستم عاملهايي (بهمراه نسخة سيستم عامل) بر روي آنها در حال اجرا مي باشد، چه نوع packet filter ها / فايروالهايي مورد استفاده قرار گرفته و چندين پارامتر ديگر. Nmap بر روي اکثر رايانه ها، هم گرافيکي و هم کنسول ها قابل استفاده است. Nmap يک نرم افزار مجاني است که به همراه کدهاي آن تحت واژة GNU GPL در دسترس مي باشد.


    ويژگيهای Nmap

    انعطاف پذيري
    از چندين تکنيک پيشرفته براي استخراج نقشة شبکه استفاده مي کند که اين نقشه از IP filter ها، فايروالها، مسيريابها و ديگر موانع تشکيل شده است. اين نقشه همچنين شامل بسياري از پورتهاي اسکن شده ( هم TCP و هم UDP)، تشخيص سيستم عامل، ping sweep ها و عوامل ديگر مي باشد.


    قدرتمندي
    از Nmap جهت اسکن کردن شبکه هاي بسيار بزرگ به معني واقعي کلمه، يعني صدها هزار از ماشين، استفاده شده است.


    قابليت حمل
    بر روي اکثر سيستم عاملها استفاده مي شود و از آن پشتيباني مي کنند. اين سيستم عاملها شامل Linux ، Open/Free/Net BSD ، Solaris ، IRIX ، Mac OS ، HP-UX ، Sun OS و غيره مي باشد.


    سادگي
    در ضمن اينکه Nmap يک مجموعه از خصوصيات پيشرفته را براي کاربران توانمند ارئه مي دهد، شما مي توانيد استفاده از آن را با دستور “nmap –O –sS targethost” آغاز نماييد. هم نسخه هاي command line و هم نسخه هاي گرافيکي (GUI) بر اساس نياز شما در دسترس مي باشد. نسخة باينري نيز براي براي کساني که مايل به کامپايل کردن کدهاي Nmap نيستند موجود مي باشد.


    رايگان
    هدف اوليه از پروژة Nmap جهت کمک به امن کردن بيشتر اينترنت و تجهيز مديران شبکه / مميزين شبکه (auditors) / هکرها به يک ابزار پيشرفته جهت جستجوي شبکة تحت کنترلشان بوده است. Nmap براي download رايگان به همراه کدهاي کامل آن که شما مي توانيد آنها را تغيير دهيد و تحت GNU General Public License (GPL) در اختيار ديگران قرار دهيد، در دسترس مي باشد.


    خوب مستند سازي شده
    بيشترين تلاش صورت گرفته تا مستندات و manual page ها به روز و قابل فهم باشد. همچنين اين مستندات و manual page ها به چندين زبان موجود مي باشند.
    - تحت پشتيباني: اگرچه اين نرم افزار هيچ ضمانتي ندارد، شما مي توانيد اگر با مشکلي مواجه شديد به آدرس fyodor@insecure.org ايميل بزنيد.


    تائيد شده
    Nmap جوايز بسياري برده است، مثل “Information Security Product of the Year” از طرف World and Codetalker Digest.


    مشهور
    همه روزه هزاران نفر از مردم Nmap را download مي کنند و اين نرم افزار با بسياري از سيستم عاملها کار ميکند.


    روش عملکرد Nmap

    در اين قسمت به توضيح عملکرد نرم افزار Nmap تحت سيستم عامل Linux مي پردازيم و سپس به توضيح سوئيچ هاي Nmap که بصورت command line مي باشند مي پردازيم:
    همانطور که گفته شد Nmap يک نرم افزار امنيتي مي باشد که تعداد زيادي از تکنيکهاي اسکن را پشتيباني مي کند:
    UDP ، TCP connect() ، TCP SYN (half open) ، FTP proxy (bounce attack) ، Reverse-ident ، ICMP (ping sweep) ، FIN ، ACK sweep ، Xmas Tree ، SIN sweep ، IP Protocol و Null scan .
    همچنين Nmap داراي بسياري از قابليتهاي پيشرفته نظير شناسايي OS با استفاده از TCP/IP ، اسکن نامحسوس (stealth scanning) ، محاسبات تاخير ديناميکي و انتقال مجدد (retarnsmission) ، اسکن موازي، شناسايي سيستم هاي خاموش (down hosts) از طريق ping هاي موازي، decoy scanning ، شناسايي پورتهاي فيلتر شده ، direct (non-portmapper) RPC scanning ، fragmentation scanning و همچنين تعيين پورت و هدف منعطف مي باشد.
    حداکثر تلاشها صورت گرفته تا کارايي Nmap براي کاربراني که از امتياز root برخودار نيستند، کاهش نيابد. متاسفانه بسياري از واسطهاي kernel هاي حساس (مثل سوکتهاي خام [raw sockets]) نياز به مجوز root دارند. هر زمان که ممکن است Nmap بايد تحت مجوز root راه اندازي شود (البته نه بعنوان setuid root).
    نتيجة اجراي Nmap معمولاً يک ليست از پورتهاي جالب (در صورت وجود) از ماشين يا ماشينهايي که اسکن شده اند، مي باشد. هميشه Nmap در مورد پورت شناخته شده (“well known”port) نام سرويس (در صورت وجود)، نام، وضعيت و پروتکل را مي دهد. وضعيت (state) مي تواند ‘open’ ، ‘filtered’ يا ‘unfiltered’ باشد. ‘open’ يعني ماشين مورد نظر ارتباطات روي آن پورت را connect() خواهد کرد. ‘filtered’ يعني يک فايروال / فيلتر يا ديگر موانع موجود بر روي شبکه، پورت را پوشش مي دهد و مانع آن مي شود که Nmap تعيين کند که پورت باز است يا بسته. ‘unfiltered’ يعني آن پورتي که توسط Nmap شناسايي شده، بسته شده و بنظر مي رسد هيچ فايروالي / فيلتري به تلاش Nmap براي تعيين وضعيت آن پورت توجه ندارد. مواجه شدن با پورتهاي ‘unfiltered’ متداول مي باشند و زماني اين وضعيتها نشان داده مي شوند که اکثر پورتهاي اسکن شده در وضعيت ‘filtered’ باشند.
    بسته به سوئيچهاي استفاده شده، Nmap مي تواند مشخصات زير را در remote host معين کند: سيستم عامل مورد استفاده، TCP sequencability ، نام کاربراني که برنامه هاي منحصر به هر پورت را اجرا مي کنند، نام DNS ، تعيين اينکه آيا ميزبان يک smurf address مي باشد و چند مشخصة ديگر.

    - همچنين Nmap داراي بسياري از قابليتهاي پيشرفته نظير موارد زیر میباشد:
    - شناسايي OS با استفاده از TCP/IP
    - اسکن نامحسوس (stealth scanning)
    - محاسبات تاخير ديناميکي و انتقال مجدد (retarnsmission)
    - اسکن موازي
    - شناسايي سيستم هاي خاموش (down hosts) از طريق ping هاي موازي
    - decoy scanning
    - شناسايي پورتهاي فيلتر شده
    - direct (non-portmapper) RPC scanning
    - fragmentation scanning

    حداکثر تلاشها صورت گرفته تا کارايي Nmap براي کاربراني که از امتياز root برخودار نيستند، کاهش نيابد. متاسفانه بسياري از واسطهاي kernel هاي حساس (مثل سوکتهاي خام [raw sockets]) نياز به مجوز root دارند. هر زمان که ممکن است Nmap بايد تحت مجوز root راه اندازي شود (البته نه بعنوان setuid root).
    نتيجة اجراي Nmap معمولاً يک ليست از پورتهاي جالب (در صورت وجود) از ماشين يا ماشينهايي که اسکن شده اند، مي باشد. هميشه Nmap در مورد پورت شناخته شده
    (“well known”port) نام سرويس (در صورت وجود)، نام، وضعيت و پروتکل را مي دهد. وضعيت (state) مي تواند ‘open’ ، ‘filtered’ يا ‘unfiltered’ باشد. ‘open’ يعني ماشين مورد نظر ارتباطات روي آن پورت را connect() خواهد کرد. ‘filtered’ يعني يک فايروال / فيلتر يا ديگر موانع موجود بر روي شبکه، پورت را پوشش مي دهد و مانع آن مي شود که Nmap تعيين کند که پورت باز است يا بسته. ‘unfiltered’ يعني آن پورتي که توسط Nmap شناسايي شده، بسته شده و بنظر مي رسد هيچ فايروالي / فيلتري به تلاش Nmap براي تعيين وضعيت آن پورت توجه ندارد. مواجه شدن با پورتهاي ‘unfiltered’ متداول مي باشند و زماني اين وضعيتها نشان داده مي شوند که اکثر پورتهاي اسکن شده در وضعيت ‘filtered’ باشند.
    بسته به سوئيچهاي استفاده شده، Nmap مي تواند مشخصات زير را در remote host معين کند: سيستم عامل مورد استفاده، TCP sequencability ، نام کاربراني که برنامه هاي منحصر به هر پورت را اجرا مي کنند، نام DNS ، تعيين اينکه آيا ميزبان يک smurf address مي باشد و چند مشخصة ديگر.

     

     |+| نوشته شده در  پنجشنبه دوم اسفند 1386ساعت 9:58 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Gridbus/GRIDS Lab Annual Report

    The GRIDS Lab and the Gridbus Project is pleased to release Annual
    Report of its key activities and outcomes during the academic year 2007.
    Please browse:

    http://www.gridbus.org/reports/GRIDS-Lab-AnnualReport2007.pdf

    منبع : http://www.gridbus. org

     

     |+| نوشته شده در  پنجشنبه دوم اسفند 1386ساعت 9:28 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    High Performance SSH/SCP - HPN-SSH

    (PI) Chris Rapier PSC, Michael Stevens CMU, Benjamin Bennett PSC
    email: hpn-ssh@psc.edu
     

    Are you using HPN-SSH? Please let us know

    Abstract

    SCP and the underlying SSH2 protocol implementation in OpenSSH is network performance limited by statically defined internal flow control buffers. These buffers often end up acting as a bottleneck for network throughput of SCP, especially on long and high bandwith network links. Modifying the ssh code to allow the buffers to be defined at run time eliminates this bottleneck. We have created a patch that will remove the bottlenecks in OpenSSH and is fully interoperable with other servers and clients. In addition HPN clients will be able to download faster from non HPN servers, and HPN servers will be able to receive uploads faster from non HPN clients. However, the host receiving the data must have a properly tuned TCP/IP stack. Please refer to this tuning page for more information.

    The amount of improvement any specific user will see is dependent on a number of issues. Transfer rates cannot exceed the capacity of the network nor the throughput of the I/O subsystem including the disk and memory speed. The improvement will also be highly influenced by the capacity of the processor to perform the encryption and decryption. Less computational expensive ciphers will often provide better throughput than more complex ciphers.

    Performance Gap

    With many high bandwidth connections, there is a performance gap between what SSH is capable of and what the network link has the capacity to do. The difference between these two numbers is the performance gap, or the underutilized portion of your network connection. This gap, in most situations, is the direct cause of undersized receive buffers in the SSH congestion control mechanism. The graph below shows the optimal receive buffer versus the effective SSH channel receive buffer for various round trip times along a 100Mbps path


    The difference between the red and blue line is, essentially, wasted throughput potential along the path.

    Normal vs. HPN SCP Performance

    The effect of raising the SSH buffer sizes can be seen in the following chart. The standard SSH throughput, represented by the red columns, closely matches the expected throughput for this path if the receive buffer was limited to 64KB. By increasing the size of the SSH channel receive buffers throughput, represented by the blue columns, improved by as much as 1000%. The variation now seen is due to the complexity of the cipher and the limits of the hard drive.


    Clearly, the HPN patches significantly boost throughput performance. This enhancement is entirely from tuning the SSH buffer sizes.

    Patches

    All patches should be applied to the OpenSSH source files using the 'patch' utility from the command line. Building SSH from source is actually quite easy and the recommended method. Some binary packages will be made available as a convenience but will not be officially supported.

    Solaris Users: Some versions of Solaris use an older version of the patch and diff commands which are incompatible with this patch. Please make sure you are using a recent version of gnu patch.

    HPN-13

    This is the 1st revision of the 13th major version of the HPN patch set. The HPN12 patch set remains available here. There are two fundamental differences between the HPN12 and HPN13 patch set. The most significant of these is the inclusion of the Multi-Threaded AES-CTR (MT-AES-CTR) mode cipher. A paper and presentation about this work are available.

    This cipher mode introduces multi-threading into the OpenSSH application in order to allow it to make full use of CPU resources available on multi-core systems. As the canonical distribution of OpenSSH is unable to make use of more than one core, high performance transfers can be bottlenecked by the cryptographic overhead. HPN12 dealt with this by the introduction of None Cipher Switching. However, this technique is limited to those users who are willing to allow their data to be transferred without encipherment. It also was, by design, limited to bulk data transfers which further restricts its value to some users. The MT-AES-CTR mode will allow users, on multicore platforms, to attain throughput rates comparable or equal to unencrypted data transfers. In both lab and real world tests throughput at full GigE line rates, with full encryption, were commonly seen.


    Obviously, the MT AES-CTR mode cipher breaks through the single core bottleneck.


    MT-AES-CTR produces a cipherstream that is indistinguishable from the distributed Single Thread AES-CTR (ST-AES-CTR) mode cipher and is, to our knowledge, completely compatible with all other AES-CTR mode implementations. In other words, its completely backward compatible and will function in heterogenous connections with no problem. However, it is important to note MT-AES-CTR does impose additional overhead and may impose a performance penalty on single core machines. Additionally, the MT-AES-CTR mode cipher replaces the default ST-AES-CTR mode cipher. We are in the process of developing a method to allow user switching between the two modes. Additionally, this does rely on posix threads so you need to be sure they are properly supported in the target OS.

    The second major difference is in the way in which the HPN patch set will be made available. HPN13 will be provided as both a 'kitchen sink' and 'a la carte' distribution. The kitchen sink distribution will incorporate the dynamic window patches, none cipher switching, MT-AES-CTR mode ciphers, peak throughput display in SCP, and extended server side logging. The a la carte distribution will make each of these available as distinct patches which can be used independently of each other.

    HPN-13 Kitchen Sink

    Note: This patch has been gziped. You must gunzip it before applying it.

    OpenSSH Version HPN-SSH Patch
    OpenSSH 4.7p1 OpenSSH-4.7p1-hpn13 v1

    HPN-13 A la Carte

    These are the a la carte patches and some of the version numbers may skew from time to time. For example, if the peak throughput patch doesn't need to be updated for various OpenSSH releases the patch number won't be updated. Not all of the patches are available just yet, as the NONE cipher switching still needs to be broken out from the HPN12 patch set.

    Patch Description Source
    Dynamic Windows and None Cipher This is a basis of the HPN-SSH patch set. It provides dynamic window in SSH and the abilityt o switch to a NONE cipher post authentication. Based on the HPN12 v20 patch. This patch is gziped. For OpenSSH 4.7p1. openssh4.7-dynwindow_noneswitch.diff.gz
    Threaded CTR cipher mode This patch adds threading to the CTR block mode for AES and other supported ciphers. This may allow SSH to make use of multiple cores/cpus during transfers and significantly increase throughput. This patch should be considered experimental at this time. openssh4.7-CTR-threading.diff
    Peak Throughput This patch modifes the progress bar to display the 1 second throughput average. On completion of the transfer it will display the peak throughput through the life of the connection. For OpenSSH 4.7p1. openssh4.7-peaktput.diff
    Server Logging This patch adds additional logging to the SSHD server including encryption used, remote address and port, user name, remote version information, total bytes transferred, and average throughput. In order to use this patch you *must* direct syslogd to use an additional logging socket. This socket will be located in the sshd chroot, typically /var/empty. As such you will need to create a /var/empty/dev directory and add '-a /var/empty/dev/log' to your syslogd configuration. Example output can be seen here For OpenSSH 4.7p1. openssh4.7-server-logging.diff


    How to apply the patches.
    1. Get the OpenSSH source code from OpenSSH.org.
    2. Untar OpenSSH source.
    3. cd into the OpenSSH source directory
    4. If gzipped type 'zcat pathtopatch/patchfile | patch'
        Otherwise 'patch < pathtopatch/patchfile'
    5. type 'configure && make'
    6. type 'make install'


     |+| نوشته شده در  پنجشنبه دوم اسفند 1386ساعت 9:20 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    TeraGrid '08

    TeraGrid '08 Welcomes Papers, Posters, Demos, and Visualizations!

    The 3rd annual conference will showcase TeraGrid's impact in research and education through presented papers, demos, posters, and visualizations. TG08 will foster collaborations among leading researchers, developers, and educators that build on the growing TeraGrid infrastructure. TG08 will also provide information and training to enable current and future users to achieve maximum impact using TeraGrid resources and services. All interested individuals and organizations are invited to participate. Visit the Call for Participation.

    • Registration Open: March 1, 2008
    • Applications for student volunteers due: March 14, 2008
    • Abstracts of 500 Words or Less Due: March 18, 2008
    • Full Papers of 7-10 Pages Due: April 1, 2008
    • Demonstration, Poster, and Visualization Abstracts Due: April 18, 2008
    • Final Accepted Papers for Publication Due: May 5, 2008
    • Notifications of Posters and Visualizations: May 5, 2008
    • Challenge Competition Updates Due: May 30, 2008

    For complete conference details, visit http://www.tacc.utexas.edu/tg08/index.php

    منبع : http://www.teragrid.org

     

     |+| نوشته شده در  پنجشنبه دوم اسفند 1386ساعت 9:17 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    درباره TeraGrid

    TeraGrid is an open scientific discovery infrastructure combining leadership class resources at eleven partner sites to create an integrated, persistent computational resource.

    Using high-performance network connections, the TeraGrid integrates high-performance computers, data resources and tools, and high-end experimental facilities around the country. Currently, TeraGrid resources include more than 750 teraflops of computing capability and more than 30 petabytes of online and archival data storage, with rapid access and retrieval over high-performance networks. Researchers can also access more than 100 discipline-specific databases. With this combination of resources, the TeraGrid is the world's largest, most comprehensive distributed cyberinfrastructure for open scientific research.

    TeraGrid is coordinated through the Grid Infrastructure Group (GIG) at the University of Chicago, working in partnership with the Resource Provider sites: Indiana University, Oak Ridge National Laboratory, National Center for Supercomputing Applications, Pittsburgh Supercomputing Center, Purdue University, San Diego Supercomputer Center, Texas Advanced Computing Center, University of Chicago/Argonne National Laboratory, the National Institute for Computational Sciences, the Louisiana Optical Network Initiative, and the National Center for Atmospheric Research.

    منبع : http://teragrid.org/about

     

     |+| نوشته شده در  پنجشنبه دوم اسفند 1386ساعت 9:15 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    Multi-Threaded SSH/SCP

    Chris Rapier has presented a paper describing how to dramatically increase the speed of SCP networks. It appears that because SCP relies on a single thread in SSH, the crypto can sometimes be the bottleneck instead of the wire speed. Their new implementation (HPN-SSH) takes advantage of multi-threaded capable systems dramatically increasing the speed of securely copying files. They are currently looking for potential users with very high bandwidth to test the upper limits of the system.
    http://www.psc.edu/networking/projects/hpn-ssh/

     |+| نوشته شده در  پنجشنبه دوم اسفند 1386ساعت 9:3 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    لیست کامل تمامی دستورات قابل اجرا از طریق Run

    با استفاده از دستورات موجود در این لیست که بیش از 110 دستور را شامل میشود شما میتوانید تنها از طریق Run ویندوز ، و تایپ ساده دستور کوتاه بلافاصله برنامه مورد نظر را اجرا نمایید.

    این برنامه میتواند برنامه های معمولی ویندوز و حتی برنامه های متفرقه نصب شده باشد. در صورتی که بتوانید تعداد زیادی از این دستورات را به خاطر بسپارید و آنها را در کار روزانه خود هنگام کار با کامپیوتر به کار بگیرید ، آنگاه شما را میتوان یک کاربر واقعأ حرفه ای در ویندوز نامید.

     

    برای شروع کار کافی است از منوی Start وارد Run شوید. سپس هر یک از دستورات موجود در ستون دستور را تایپ نموده و سپس Enter بزنید تا بلافاصله برنامه مورد نظر اجرا گردد.



    نام برنامه اجرایی
    دستور
    Accessibility Controls access.cpl
    Add Hardware Wizard hdwwiz.cpl
    Add/Remove Programs appwiz.cpl
    Administrative Tools control admintools
    Automatic Updates wuaucpl.cpl
    Bluetooth Transfer Wizard fsquirt
    Calculator calc
    Certificate Manager certmgr.msc
    Character Map charmap
    Check Disk Utility chkdsk
    Clipboard Viewer clipbrd
    Command Prompt cmd
    Component Services dcomcnfg
    Computer Management compmgmt.msc
    Date and Time Properties timedate.cpl
    DDE Shares ddeshare
    Device Manager devmgmt.msc
    Direct X Control Panel - If Installed directx.cpl
    Direct X Troubleshooter dxdiag
    Disk Cleanup Utility cleanmgr
    Disk Defragment dfrg.msc
    Disk Management diskmgmt.msc
    Disk Partition Manager diskpart
    Display Properties control desktop
    Display Properties desk.cpl
    Display Properties w/Appearance Tab Preselected control color
    Dr. Watson System Troubleshooting Utility drwtsn32
    Driver Verifier Utility verifier
    Event Viewer eventvwr.msc
    File Signature Verification Tool sigverif
    Findfast findfast.cpl
    Folders Properties control folders
    Fonts control fonts
    Fonts Folder fonts
    Free Cell Card Game freecell
    Game Controllers joy.cpl
    Group Policy Editor - XP Pro gpedit.msc
    Hearts Card Game mshearts
    Iexpress Wizard iexpress
    Indexing Service ciadv.msc
    Internet Properties inetcpl.cpl
    IP Configuration - Display Connection Configuration ipconfig /all
    IP Configuration - Display DNS Cache Contents ipconfig /displaydns
    IP Configuration - Delete DNS Cache Contents ipconfig /flushdns
    IP Configuration - Release All Connections ipconfig /release
    IP Configuration - Renew All Connections ipconfig /renew
    IP Configuration - Refreshes DHCP & Re-Registers DNS ipconfig /registerdns
    IP Configuration - Display DHCP Class ID ipconfig /showclassid
    Java Control Panel - If Installed jpicpl32.cpl
    Java Control Panel - If Installed javaws
    Keyboard Properties control keyboard
    Local Security Settings secpol.msc
    Local Users and Groups lusrmgr.msc
    Logs You Out Of Windows logoff
    Microsoft Chat winchat
    Minesweeper Game winmine
    Mouse Properties control mouse
    Mouse Properties main.cpl
    Network Connections control netconnections
    Network Connections ncpa.cpl
    Network Setup Wizard netsetup.cpl
    Notepad notepad
    Nview Desktop Manager - If Installed nvtuicpl.cpl
    Object Packager packager
    ODBC Data Source Administrator odbccp32.cpl
    On Screen Keyboard osk
    Opens AC3 Filter - If Installed ac3filter.cpl
    Password Properties password.cpl
    Performance Monitor perfmon.msc
    Performance Monitor perfmon
    Phone and Modem Options telephon.cpl
    Power Configuration powercfg.cpl
    Printers and Faxes control printers
    Printers Folder printers
    Private Character Editor eudcedit
    Quicktime - If Installed QuickTime.cpl
    Regional Settings intl.cpl
    Registry Editor regedit
    Registry Editor regedit32
    Remote Desktop mstsc
    Removable Storage ntmsmgr.msc
    Removable Storage Operator Requests ntmsoprq.msc
    Resultant Set of Policy - XP Pro rsop.msc
    Scanners and Cameras sticpl.cpl
    Scheduled Tasks control schedtasks
    Security Center wscui.cpl
    Services services.msc
    Shared Folders fsmgmt.msc
    Shuts Down Windows shutdown
    Sounds and Audio mmsys.cpl
    Spider Solitare Card Game spider
    SQL Client Configuration cliconfg
    System Configuration Editor sysedit
    System Configuration Utility msconfig
    System File Checker Utility - Scan Immediately sfc /scannow
    System File Checker Utility - Scan Once At Next Boot sfc /scanonce
    System File Checker Utility - Scan On Every Boot sfc /scanboot
    System File Checker Utility - Return to Default Setting sfc /revert
    System File Checker Utility - Purge File Cache sfc /purgecache
    System File Checker Utility - Set Cache Size to size x sfc /cachesize=x
    System Properties sysdm.cpl
    Task Manager taskmgr
    Telnet Client telnet
    User Account Management nusrmgr.cpl
    Utility Manager utilman
    Windows Firewall firewall.cpl
    Windows Magnifier magnify
    Windows Management Infrastructure wmimgmt.msc
    Windows System Security Tool syskey
    Windows Update Launches wupdmgr
    Windows XP Tour Wizard tourstart
    Wordpad write

     

     |+| نوشته شده در  چهارشنبه یکم اسفند 1386ساعت 8:13 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    اسرار كرنل ويندوز

    تسريع بوت:
    هنگامي كه شما براي اولين بار ويندوز
    XP را بر روي يك سيستم نصب مي كنيد،‌ يكي از بارزترين بهبودهايي كه مايكروسافت به كرنل سيستم عامل خود داده است توجه شما را جلب خواهد كرد. در طي سير تغيير و تحولات ويندوز و آمدن نسخه هاي جديدتر، همه انتظار داشتند زمان بوت نيز در نسخه هاي جديدتر طولاني تر شود، اما مايكروسافت حقيقتا با روند سريع بوت ويندوز XP، همه را غافلگير كرده است. اما مايكروسافت چه كار جديدي را در ويندوزXP انجام داده است؟
    اولين چيزي كه روند بوت را سريعتر مي كند، چيزي است كه براي اولين بار با ويندوز
    XP،Me و ويندوز
    ۲۰۰۰ ارائه شد يعني Simple Boot Flag يا.SBF SBF ثباتي در حافظه CMOS‌ در تراشهBIOS است و اولين باري كه ويندوز بوت مي شود مقدار دهي ميگردد. SBF سه دسته اطلاعات مهم را در خود نگهداري مي كند، علاوه بر يك بيتparity در انتها كه ويندوز را قادر مي سازد صحت محتواي اين ثبات را بررسي كند.
    اولين بيت در اين ثبات،
    PNPOS نام دارد كه نشان مي دهد آيا سيستم عاملي كه نصب شده است يك سيستم عامل آگاه از ادواتPlug-and-Play هست يا خير. اگر اين بيت بر روي
    ۱ تنظيم شده باشد،BIOS در حالت حداقلي، تنها چيزهايي را كه واقعا لازم دارد بارگزاري مي كند و سپس كنترل را به ركورد راه انداز سيستم عامل مي سپارد. ويندوز هميشه اين بيت را بر روي ۱ تنظيم مي كند. اين كار به تنهايي زمان بوت را كاهش مي دهد.
    از آنجا كه
    BIOS تنها حداقل سخت افزار مورد نياز را راه اندازي مي كند، مي تواند از مواردي چون درگاه هاي ورودي/خروجي ووقفه ها صرف نظر كرده و كنترل و راه اندازي آنها را به ويندوز بسپارد كه بسيار سريعتر اين كار را انجام مي دهد.در حقيقت تنظيم اين ادوات با مقادري نادرست مي تواند به طور جدي ويندوز را در نسبت دهي منابع سيستم به طور پويا، دچار مشكل سازد. پس از بيت PNPOS در ثبات SBF، بيت ديگري به نام BOOTING وجود دارد كه نشان مي دهد آيا آخرين بوت ويندوز موفقيت آميزبوده است يا خير.اگر اين بيت نشان بدهد كه بوت قبلي موفقيت آميز نبوده، BIOS مقدار بيت بعدي را برابر ۱
    قرار مي دهد.
    آخرين بيت،
    DIAG نام دارد و مشخص مي كند كه آيا روال هاي بررسي و تشخيص سخت افزارهاي BIOS بايد اجرا شوند يا خير. اگر اين بيت داراي مقدار صفر باشد، يعني در طول بوت قبلي مشكلي رخ نداده در نتيجه از انجام كنترل هاي قديمي سخت افزاري صرف نظر مي شود كه باعث كاهش زمان بوت مي شود.
    اما ا گر بوت قبلي موفقيت آميز نبوده باشد، بيت
    DIAG داراي مقدار
    ۱ خواهد بود و روال هاي كنترل و تشخيص سخت افزار انجام مي شود.

    پيش واكنشي (Pre-fetching):
    بهبود بعدي و بزرگ هسته ويندوز
    XP، اضافه شدن قابليت پيش واكنشي به آن است.اين بدين معني است كه راه انداز بوت هسته سيستم عامل، تمامي داده هايي را كه نياز دارد به طور يك جا واكشي مي كند كه باعث كاهش زمان دستيابي ديسك و در نتيجه افزايش سرعت بوت سيستم مي گردد. راه انداز بوت ويندوزXP اساسا به منظور پيش واكشي همزمان درايورها و كدهاي ديگري كه بارگذاري و اجراي آنها در هنگام بوت حياتي و مهم است، تماما از اول بازنويسي شده است. علاوه بر بارگذاري همزمان و موازي درايورها و كدهاي راه انداز، ويندوزXP تا آنجا كه بتواند بارگذاري و راه اندازي درايورها را سريعترانجام مي دهد. در واقع حتي هنگامي كه شما ميز كار ويندوزXP را مي بينيد بسياري از درايورها هنوز نصب نشده اند. در حالي كه نسخه هاي قبلي ويندوز پيش از نمايان ساختن ميز كار، راه اندازي تمام درايورها را كامل مي كردند. به عنوان مثال ويندوز XP درايورهاي شبكه را در اين مرحله بارگذاري مي كند، اما آن ها را تا زماني كه ميز كار بالا آمده و در حال اجرا باشد به طور كامل راه اندازي نمي كند. البته يك استثناي بزرگ براي اين حالت وجود دارد وآن حالتي است كه كامپيوتر شما بخشي از يك Domain شبكه است، كه در آن حالت تمام درايورها بايد تماما پيش از رسيدن به مرحله تاييد ورود كاربرو Login كردن، فعال بارگذاري و راه اندازي شوند. اگر در ويندوزXP شما برخي از منابع شبكه اي مانند درايو شبكه، چاپگرشبكه، سي دي درايو راه دور در شبكه و… به درايوهاي شبكه نگاشت شده اند، دليل اينكه در بسياري از مواقع، درست بعد از بوت، قادر به كار با آنها نمي باشيدهمين امر است.
    تسريع و بهبود بزرگ ديگري كه در روند بوت و زمان آن انجام شده است، هنگامي ديده مي شود كه ويندوز
    XP شروع به چيدن پوياي مكان فيزيكي تاييد درايور در ويندوزXP از نصب بدون اجازه درايورهاي نا معتبرو ناشناس جلوگيري مي كند.
    بهبود در حافظه :
    بعد از آنكه سيستم بوت شد و بالا آمد، يكي از بهبودهاي اصلي ويندوز يعني روال هاي مديريت حافظه كه تماما از اول بازنويسي شده اند شروع به ايفاي نقش مي كنند.
    حافظه بسته به اهميت محتواي آن، توسط ويندوزبه دو دسته تقسيم بندي مي شود. گروه اول، حافظه صفحه بندي نشده است. اين حافظه زمان زمان بسيار زيادي را، حتي براي خود روال مديريت حافظه كه بايد هميشه در حافظه فيزيكي قرار داشته باشد مصرف مي كند. گروه دوم، حافظه صفحه بندي شده است كه اكثريت حافظه سيستم شما را تشكيل مي دهد. استفاده از اين نوع حافظه خطرات كمتري را در مواقع بحراني سيستم در بر دارد و لذا ويندوز مي تواند در صورب نياز به حافظه فيزيكي بيشتر، با خيال آسوده آن را توسط مدير حافظه مجازي به روي ديسك منتقل كند.
    ويندوز، حافظه رابه صفحات
    ۴ كيلو بايتي تقسيم بندي مي كند واين صفحات توسط سيستمي ازFlagها مديريت مي شوند كه مدخل هاي جدول صفحات يا Page Table Entries(PTE) نام دارند.هرPTE حاوي اطلاعاتي در باره صفحه اي است كه به آن تخصيص داده شده و نيز شامل اينكه آيا آن صفحه در حال استفاده است يا خير. ويندوزXP تعداد اينPTE هارا به اندازه اي افزايش داده است كه بتواند تا ۱.۳ گيگا بايت حافظه را پوشش دهد كه بدين معني است كه هسته سيستم عامل مي تواند حافظه را به صورت بهينه تري بدون نياز به پاكسازي PTEها و استفاده مجدد از آن ها مورد استفاده قرار دهد.

    منبع:مجله شبكه، شماره ۴۹

     

     |+| نوشته شده در  چهارشنبه یکم اسفند 1386ساعت 8:9 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    استاد ايراني دانشگاه واشنگتن ابر رايانه اي استثنايي طراحي كرد

    دكتر بهروز شيرازي، استاد و پژوهشگر ايراني دانشگاه واشنگتن با همكاري دستيارانش موفق به طراحي ابررايانه XMT براي شركت CRAY شد.
        به گزارش ايسنا، اين ابررايانه منحصر به فرد در تحقيقات و برنامه هاي محاسبه اي كه مستلزم پردازش انبوهي گسترده از داده ها و اطلاعات است، استفاده خواهد شد.
        دكتر شيرازي، رييس دانشكده مهندسي برق و علوم رايانه دانشگاه واشنگتن در اين باره گفت: اين سيستم همچنين براي محققان در دانشگاه واشنگتن در دسترس خواهد بود و فرصت ها را براي همكاري هاي علمي و اكتشافي افزايش خواهد داد.
        وي خاطر نشان كرد: اين سيستم اساسا يك معماري رايانه اي جديد براي حل مشكلات چالشي بزرگ ارائه مي كند.
        شيرازي تاكيد كرد: ابررايانه XMT شركت جهاني CRAY يك كاتاليزور براي تقويت و گسترش همكاري بين محققان اين شركت، آزمايشگاه ملي نورث وست پاسيفيك و نيز محققان دانشگاه واشنگتن خواهد بود.
        اين سيستم قرار است در سال 2008 تا سطح يك سيستم توليدي ارتقا پيدا كند.
        شركت ساخت ابررايانه هاي CRAY نيز در اين رابطه اعلام كرد كه XMT داراي يك معماري چند رشته اي گسترده و منحصر به فرد و حافظه بزرگ جهاني است و براي كاربردهايي طراحي شده كه مستلزم دسترسي به ترابيت هايي از داده هاي چيده شده در يك الگوي غيرقابل پيش بيني مانند كشف، هوش تجاري و تحليل هاي انرژي است.
        گفتني است، دكتر شيرازي و همكارانش همچنين از سال گذشته با دريافت اعتباري پژوهشي بالغ بر 6.1 ميليون دلار از سازمان فضايي ناسا، تحقيقات گسترده اي را در خصوص طراحي و ساخت حسگرهاي جديد با قابليت بهره گيري در نقاطي همچون آتش فشان ها و همچنين سطح سياره مريخ آغاز كرده اند. به گفته آنها يكي از اهداف مهم اين پروژه طراحي الگوريتمي است تا ميزان مصرف انرژي به حداقل برسد.
        از نكات مهم ديگر پروژه اين است كه قرار است تا از اين حسگرهاي ويژه طي يك هماهنگي جهاني با سيستم موقعيت ياب جهاني موسوم به (GPS) جهت دريافت اطلاعات دقيق رفتارهاي غير عادي در محيط هاي همچون آتش فشان ها استفاده شود.

    منبع : روزنامه كيهان > شماره 18931

     

     |+| نوشته شده در  چهارشنبه یکم اسفند 1386ساعت 7:59 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام

    راه اندازي يك ابر رايانه با دوچرخه

    10 دانشجوي موسسه تكنولوژي ماساچوست (ام آي تي) موفق شدند انرژي موردنياز يك ابر رايانه را به مدت 20 دقيقه تنها با حركت پدال دوچرخه تامين كنند.
        گروهي از دانشجويان «ام آي تي» در بوستن آمريكا توانستند جريان الكتريكي لازم براي عملكرد يك ابر رايانه را به مدت 20 دقيقه تنها با حركت پدال دوچرخه تامين كنند و به اين ترتيب نام خود را در كتاب ركوردهاي جهان، گينس به ثبت برسانند.
        براساس گزارش Register، راز موفقيت اين ابر رايانه در فعال شدن با نيروي انسان، در مصرف كم اجزاي رايانه اي آن است.
        در حقيقت اين رايانه «ام آي تي» كه براي اين آزمايش مورد استفاده قرار گرفت، يك سيستم SiCortex SC648 بر پايه سيستم عامل لينوكس با 648 واحد «سي پي يو» يك ترابايت حافظه و نياز به 1200 وات انرژي است.
        اين سيستم مي تواند هر شش «سي پي يو» را تنها با مصرف 8 وات انرژي مورد استفاده قرار دهد. اين درحالي است كه نوت بوكهاي موجود در بازار به طور طبيعي 100 وات انرژي مصرف مي كنند.
        يك دوچرخه مي تواند انرژي موردنياز براي فعاليت يك رايانه قابل حمل عادي را به مدت 20 دقيقه تامين كند، به اين 10 دانشجو 15 ژانويه آينده يك جايزه 5 هزار دلاري و يك دوچرخه براي هريك از آنها اعطا مي شود.

    منبع : روزنامه كيهان > شماره 19021


        

     |+| نوشته شده در  چهارشنبه یکم اسفند 1386ساعت 7:49 بعد از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
    زمينه هاي کاري و تحقيقاتي رشته مهندسي کامپيوتر ( مهندسی نرم افزار )

    سيستم هاي عامل (Operating Systems)

    سيستم عامل برنامه ايست که بر روي يک سيستم سخت افزاري (مثل کامپيوتر) قرار مي گيرد و وظيفه آن عبارت است از ايجاد ارتباط بين نرم افزار ها و قسمت هاي مختلف سخت افزاري و همچنين مديريت و کنترل قسمت هاي مختلف سيستم.

    ·  اتوماسيون اداري (Office Automation)

    اتوماتيک کردن روند فعاليت هاي يک اداره، موسسه يا سازمان بوسيله کامپيوتر.

    · برنامه نويسي همروند (Concurrent Programming)

    به وجود آوردن امکان اجراي همزمان چند برنامه در کامپيوتر و مديرت آنها.

    · الگوريتم هاي موازي (Parallel Algorithms)

    شکستن يک الگوريتم به قسمت هايي که مي توانند به صورت همزمان توسط چند پردازنده (چند کامپيوتر) انجام شوند، به منظور افزايش سرعت اجراي الگوريتم.

    ·   طراحي و ساخت کامپايلرها (Design & Implementation of Compilers)

    کامپايلرها (در حالت خاص) برنامه هايي هستند که زبانهاي برنامه نويسي را به زبان کامپيوتر تبديل مي کنند.

    ·  شبيه سازي کامپيوتري (Computer Simulation)

    شبيه سازي يک پديده خارجي در کامپيوتر با استفاده از قوانين (رياضي) حاکم بر آن پديده.

    ·  گرافيک کامپيوتري (Computer Graphics)

     ·  محاسبات عددي (Numerical Methods of Calculation)

    انجام محاسبات رياضي (نظير مشتق گيري، انتگرال گيري، بدست آوردن ريشه معادلات، حل معادلات ديفرانسيل) بوسيله محاسبات تخميني (به جاي روشهاي نمادين و کلاسيک) مي توان گفت اين روش از جهت در مقابل شاخه محاسبات نمادين قرار دارد. (به قسمت هوش مصنوعي رجوع کنيد)

    3.  علوم کامپيوتر (Computer Science)

    · ساختمان هاي گسسته (Discrete Structures)

    اين مبحث، شامل همان مطالبي است که در دبيرستان با عنوان رياضيات گسسته مي خوانديد. البته در اين مبحث مطالب رياضيات گسسته به صورت گسترده تر و مرتبط تر با علوم کامپيوتر و الگوريتم نويسي گفته مي شود. همانطور که رياضيات پيوسته (حساب ديفرانسيل) پايه و اساس رشته هايي مانند مکانيک، برق و الکترونيک و... را تشکيل مي دهد، رياضيات پيوسته پايه و اساس علوم کامپيوتر و نرم افزار است. مطالبي که در آن مطرح مي شوند عبارتند از: منطق رياضي، گزاره ها، نظريه مجموعه ها، (استنتاج، استقرا، برهان خلف، اصل لانه کبوتر و...)، رابطه ها، نظريه گراف، درخت ها، توابع، روابط بازگشتي، اصول شمارش، احتمالات و... که تمام اين مطالب در قسمت هاي مختلف علوم کامپيوتر کاربردهاي زيادي دارند.

    ·  ساختمان داده ها (Data Structures)

    شناخت و بوجود آوردن ساختارهايي در الگوريتم هاي کامپيوتري کاربرد هاي خاصي دارند.

    · طراحي الگوريتم ها (Design of Algorithms)

    روشهاي طراحي الگوريتم هاي بهينه، اثبات درست بودن (يا بهينه بودن) آنها بوسيله روشهاي رياضي، و محاسبه (يا تخمين) زماني که طول مي کشد تا يک الگوريتم وظيفه اي خاص را انجام دهد. همچنين آشنايي با انواع مختلف الگوريتم ها براي حل مساله.

    · نظريه زبانها و ماشين ها (Theory of Languages & Automata)

     ·   نظريه محاسبات (Theory of Computation)

    در حقيقت اين مبحث پس از بحث نظريه زبانها و ماشين ها مطرح مي گردد. در اين مبحث مدلهاي و روشهاي مختلف محاسبات (Computation) مورد مطالعه قرار مي گيرد. همچنين محدوديت هاي محاسبات (بوسيله الگوريتم هاي کامپيوتري) مورد مطالعه قرار مي گيرد. براي مثال در اين مبحث مسايلي مطرح مي شود که ثابت مي شود براي حل آنها الگوريتم کامپيوتري وجود ندارد. يا براي برخي مسايل الگوريتمي وجود دارد ولي ثابت مي شود، هر چقدر هم که تکنولوژي کامپيوتر پيشرفت کند، اين مسايل براي حل شدن نياز به زمانهاي بسيار زياد (مثلا هزاران قرن) دارند.

      · نظريه بازي ها (Game Theory)

    روشهايي براي انتخاب بهترين گزينه، در حالي که پيش روي ما عواملي وجود دارد که مانع رسيدن ما به اهدافمان مي شوند. در حالت خاص مي توان به انتخاب بهترين حرکت در يک بازي دو يا چند نفره اشاره کرد. (مثل بازي هاي شطرنج که با کامپيوتر انجام مي دهيد.)

    ·  نظريه گراف (Graph Theory)

    مبحثي که به بررسي خصوصيات گرافها، مسايل و الگوريتم هاي مربوط به گرافها مي پردازد.

    4.  هوش مصنوعي  (Artificial Intelligence)

    ·   يادگيري ماشين (Machine Learning)

    روشهايي که کامپيوتر را قادر مي سازد عملي شبيه به يادگيري و  تجربه را در حين انجام مکرر يک عمل انجام دهد. يعني با توجه به اعمالي که دفعات قبل آنجام داده و بررسي نتايج آنها، سعي کند در دفعات بعدي اعمالي بهتر، مطلوب تر و با خطاي کمتر انجام دهد.

    ·  شبکه هاي عصبي (Neural Networks)

    روش جديد حل مسايل در هوش مصنوعي بوسيله شبکه اي از واحد هاي متصل به هم (نورون ها) که هر کدام قابليت پردازش داده ها، ارتباط با نورون هاي ديگر و همچنين ايجاد تغييرات در مشخصات شبکه را دارند و اين اعمال را در جهت بهينه سازي عملکرد شبکه انجام مي دهند. شبکه هاي عصبي معمولا در مسايلي نظير بهينه سازي، تخمين توابع، کنترل و... کاربرد دارند.

    · پردازش تکاملي ( Processing)

    شاخه اي جديد از هوش مصنوعي که با در نظر گرفتن يک يا چند جواب اوليه براي يک مساله، بوجود آوردن جوابهاي جديد از جوابهاي موجود و انتخاب جوابهاي بهتر سعي مي کند يک جوابي نسبتا بهينه براي مساله بدست آورد. (براي مثال پيدا کردن ماکزيمم يک تابع چند متغيره که بدست آوردن ماکزيمم آن با روشهاي معمولي مانند مشتق گيري بسيار سخت است.)

    · رباتيک (Robotics)

    طراحي ربات هاي کامپيوتري (مکانيکي يا نرم افزاري) براي انجام وظيفه اي خاص. رشته هاي مختلفي مي توانند در اين زمينه درگير باشند مانند مهندسي برق و مکانيک. اما برنامه ريزي و هوشمند ساختن ربات ها به عهده مهندسان کامپيوتر است. براي هوشمند ساختن ربات ها از الگوريتم هاي هوش مصنوعي مانند يادگيري، پردازش تصاوير، تشخيص گفتار و... استفاده مي شود.

    · منطق فازي (Fuzzy Logic)

    تعميمي است از منطق کلاسيک که در آن بجاي به جاي دو مقدار درست و غلط (True & False) يا 0 و 1، درجه درستي داريم که مي تواند بين عددي صفر و يک باشد.

      ·  پردازش زبان طبيعي (Natural Language Processing)

    قسمتي از هوش مصنوعي که به پردازش متون زبانهاي طبيعي (مانند زبان فارسي) مي پردازد تا معاني آنها را استخراج کند. شايد عمده ترين مشکل در اين شاخه از هوش مصنوعي مبهم بودن زبانهاي طبيعي باشد.

    ·  سيستم هاي خبره (Expert Systems)

    سيستم هايي که بوسيله جمع آوري داده ها و قوانين در يک زمينه خاص مي توانند در آن زمينه مانند يک فرد خبره و متخصص عمل کنند. (مانند سيستمي که به طور خودکار عيب يک وسيله را تشخيص مي دهد و حتي مي تواند آن را تعمير کند.)

    ·  پردازش تصوير (Image Processing)

    انجام عمليات مختلف روي يک تصوير به منظور بهتر کردن مشخصات آن يا استخراج اطلاعات مورد نياز از درون آن. (براي مثال خواندن شماره پلاک خودرو ها بوسيله عکس برداري از آنها)

    · تشخيص گفتار (Speech Recognition)

    ساختن سيستم هايي که گفتار افراد را از يک ورودي (مانند ميکروفن) مي گيرند و آن را تفسير مي کنند. (مثلا مي توانند آن را به متن تبديل کنند يا تعيين کنند اين صدا مربوط به چه فردي است.)

    · محاسبات نمادين (Symbolic Calculation)

    انجام محاسباتي رياضي (مانند مشتق گيري، انتگرال گيري، حل معادله ديفرانسيل) به صورت نمادين. براي مثال وقتي به کامپيوتر ورودي را بدهيد تا مشتق آن را حساب کند به شما در خروجي 2x را بدهد. در مقابل اين روش روشهاي عددي قرار دارد که مثلا در مثال بالا فقط مي تواند مشتق را در نقطه اي خاص (آنهم به صورت تخميني) حساب کند.

    شبکه هاي کامپيوتري (Computer Networks)

    ·  طراحي، پيکربندي و پياده سازي شبکه هاي کامپيوتري

    ·   برنامه نويسي تحت شبکه و وب

    ·  تجارت الکترونيک (E-Commerce)

    خريد و فروش و انجام مبادلات تجاري از طريق شبکه هاي کامپيوتري به خصوص اينترنت.

    ·امنيت شبکه (Network Security)

    مبحثي که در آن روشهاي به وجود آوردن امنيت و محرمانگي داده ها و منابع در شبکه هاي کامپيوتري بررسي مي شود.

    · سيستم هاي توزيع شده (Distributed Systems)

    سيستم هايي که مشکل از چند کامپيوتر مي باشند که بوسيله شبکه هاي کامپيوتري به يکديگر متصل شده اند و با هماهنگي با يکديگر وظيفه واحدي را انجام مي دهند. (براي مثال پايگاههاي داده توزيع شده، سيستم هاي عامل توزيع شده و...)


    منبع : http://engcomputer.mihanblog.com/More-189.ASPX

     

     |+| نوشته شده در  چهارشنبه یکم اسفند 1386ساعت 11:1 قبل از ظهر  توسط حامد سلیمی پور  |  داغ کن - کلوب دات کام
     
      بالا