نمایش نتایج: از شماره 1 تا 1 , از مجموع 1

موضوع: از کارت گرافیک کار بکشید

  1. #1
    معاونت سایت
    تاریخ عضویت
    2012/06/05
    محل سکونت
    Tabriz
    نوشته ها
    14,398

    Eh از کارت گرافیک کار بکشید

    شرکت*های تولیدکننده سخت*افزار در سراسر جهان بسیار زیاد هستند و هر شرکتی پشتیبانی خاصی از سخت*افزار تولیدی خود می*کند. این شرکت*ها با در اختیار کاربر قرار دادن نرم*افزارهای مختلفی، می*کوشند تا کاربر از تمام قدرت سخت*افزار بهره بگیرد. از جمله سخت*افزارهایی که قدرت پردازش بسیار بالایی دارند و اغلب در سیستم*ها بیکار هستند، کارت*های گرافیک*اند. در سال*های اخیر برای بر دوش کشیدن نسل*های جدید بازی*ها، کارت*های گرافیک بسیار پیشرفت کردند. به موازات زمانی که Athlon X۲ ۴۸۰۰ (پردازنده ۲هسته*ای) تولید شد، GeForce ۸۵۰۰ (کارت*گرافیک ۱۶هسته*ای) در بازار بود و سه سال بعد همراه با Core i۷ (پردازنده ۴هسته*ای)، کارت گرافیک GeForce GTX ۲۸۵ (کارت گرافیک ۲۴۰هسته*ای) نیز در بازار بود.
    امروزه این پتانسیل بالا در کارت*های گرافیکی باعث شده که تولیدکنندگان با عرضه میان*افزارهایی، این محصولات را به عرصه*های دیگر نیز وارد کنند. از جمله این میان*افزارها CUDA Driver است که مخصوص کارت*های گرافیک انویدیا است و کارت گرافیک را تبدیل به پردازنده*ای همه*منظوره می*کند. پس از نصب این میان*افزار، می*توانید از مجموعه نرم*افزارهایی که روی کارت گرافیک اجرا می*شوند، بهره ببرید. برای نمونه نرم*افزارهایی طراحی شده*اند که عملیات کدگذاری۱ و کدبرداری۲ ویدئو را روی کارت*های گرافیک انجام می*دهند که باعث صرفه*جویی در وقت و هزینه می*شود و یا نرم*افزارهایی برای پردازش بی*درنگ۳ ویدئو روی کارت*های گرافیک وجود دارند. در ادامه این مقاله قصد داریم ابزار مفیدی را معرفی کنیم، که از قدرت کارت*های گرافیکی رایج انویدیا، از طریق نرم*افزار (به ادعای سازندگانش زبان برنامه*نویسی) متلب۴ استفاده می*کند. این کارت*ها عبارتند از جی*فورس سری ۸ به بالا، Quadro و Tesla.



    ● معرفی
    GPUmat جعبه*ابزاری۵ است که برای سریع*تر کردن محاسبات در نرم*افزار متلب (که برای محیط*های دانشگاهی نامی آشناست) طراحی شده است. به*نحوی که محاسبات را با پردازنده کارت*های گرافیک۴ انجام می*دهد. اگر از کاربران متلب هستید که وقت زیادی را با آن صرف می*کنید، با استفاده از این جعبه*ابزارها می*توانید کارهای خود را سریع*تر انجام دهید. اگرچه خود متلب اغلب سریع است ولی اگر داده*های شما بسیار زیاد باشند، نیاز به*این جعبه*ابزار را احساس خواهید کرد. این جعبه*ابزار رایگان، برای مراکز علمی و تحقیقاتی بسیار مفید است.


    ● طریقه نصب
    ابتدا از اینکه کارت*گرافیک ذکر شده در بالا را دارید، اطمینان حاصل کنید و توجه کنید که به نسخه متلب ۲۰۰۷ یا جدیدتر از آن نیاز دارید. سپس به سایت زیر بروید و پس از انتخاب سیستم عامل CUDA ۲.۳، آن را دانلود کنید که از سه نرم*افزار CUDA Driver و CUDA Toolkit و CUDA SDK تشکیل می*شود و آنها را به همین ترتیب ذکر شده نصب کنید:



    سپس به سایت زیر بروید وآخرین نسخه جعبه*ابزار GPUmat را برای سیستم عامل خود دریافت کنید:
    htpp://www.gp-you.org
    اکنون فایل را از حالت آرشیو خارج کرده و پوشه GPUmat را باز کنید و فایل GPUstart.m را درون این پوشه پیدا و آدرس پوشه آن را کپی کنید. نرم*افزار متلب را باز کنید و از نوار ابزار File» Set Path… را انتخاب کنید و آدرسی که کپی کرده*اید را به مجموعه آدرس*های موجود اضافه کنید. در پایان نیز به*خط فرمان متلب بروید و دستور GPUstart را اجرا کنید. با اجرای این دستور GPUmat به مجموعه جعبه*ابزارهای متلب اضافه می*شود.


    ● طریقه استفاده از جعبه*ابزار
    برای استفاده از این جعبه *ابزار تنها باید متغیری از نوع GPUsingle تعریف کنید که این متغیر روی کارت گرافیکی تعریف می*شود. کاری که این جعبه *ابزار انجام می*دهد این است که اکثر عملگر*ها و توابعی که جزو استاندارهای متلب هستند را برای GPUsingle تعریف می*کند و شما تنها کاری که انجام می*دهید این است که این توابع را صدا بزنید. به*طور مثال، چهار دستور زیر دو ماتریس Ah و Bh را از حافظه اصلی به حافظه کارت*گرافیک انتقال می*دهد و ضرب ماتریسی را روی آنها انجام می*دهد و در پایان حاصل را به حافظه اصلی برمی*گرداند و در Ch ذخیره کنید:
    Ad = GPUsingle(Ah);
    Bd = GPUsingle(Bh);
    Cd = Bd*Ad;
    Ch = single(Cd);
    تابع GPUsingle() متغیری را از حافظه اصلی به حافظه کارت گرافیک می*برد. تابع single() عکس کار فوق را انجام می*دهد. ورودی این دو تابع می*تواند در هر ابعادی باشد و خروجی آن معادل اندازه ورودی است. بین این دو دستور می*توانید عملیات و محاسبات را انجام دهید که اگر داده*ها از نوع GPUsingle باشند، عملیات به کارت* گرافیک فرستاده می*شود.


    ● توابع و عملگرهای تعریف شده
    در حال حاضر ۵۰تابع و ۱۴عملگر برای GPUsingle تعریف شده* است که از جمله توابع fft، sin، sum، exp و log و عملگرها جمع، تفریق، ضرب، ضرب نقطه*ای و عملگرهای منطقی را می*توان نام برد. نام توابع طوری انتخاب شده که درست همان کاری را انجام می*دهند که تابع همنام در متلب انجام می*دهند. برای اطلاع کامل از لیست توابع و عملگرها و برخی تابع*های حرفه*ای دیگر به سایت GPUmat که در بالا ذکر شد رجوع کنید.
    در انتها باید یادآور شویم که GPUsingle داده*ای از نوع ممیزشناور با دقت* ساده است و این به علت محدودیت فعلی پردازنده کارت*های گرافیک است و اگر بخواهید عملیات ممیزشناور با دقت *مضاعف انجام دهید، تبدیل نوع داده به*صورت ضمنی صورت می*گیرد و بخشی از دقت عدد از دست می*رود.
    ویرایش توسط !MAHSA! : 2013/10/27 در ساعت 01:21

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •