درود
خیلی از برنامه نویسان و سازندگان بازیهای رایانه ای همکاری نزدیکی با شرکت NVIDIA برای ساخت بازی ها ، موتورهای بازی یا حتی در بخش پردازش های مربط به هوش مصنوعی و پزشکی ، صنایع فضایی و هوایی همکاری دارند. تا بتوانند در کمترین زمان ممکن بالاترین کارایی دریافت نمایند.
شرکت Nvidia نیز برای همکاری با این شرکت ها خود دست به کار شده و اقدام به معرفی و نوشتن دستورالعمل هایی نموده است که باعث می شوند روند و فرایند ساخت برنامه های اجرایی به صورت سریع در قالب چندین رگه " Thread " نوشته شوند. تا بتوانند به انچه توازی سازی هستش برسند.
SMIT کوچک شده عبارت : Single Instruction, Multi Threads می باشد به معنی اجرای یک دستورالعمل بروی چندین رگه . نوع و یا سبک برنامه نویسی می باشد که توسط شرکت NVIDIA ابداع و در اختیار توسعه دهندگان قرار گرفته است. این مدل برنامه نویسی که قصد و اجرا ان به صورت توازی یا موازی سازی می باشد تا بتواند دستورالعمل های که قرار هستند اجرا شوند در سایر رگه ها به صورت موازی پخش یا قرار گرفته تا در کمترین زمان ممکن پردازش داده ها انجام و ان را به اطلاعات تبدیل نماید.
اساس طراحی SMIT رویکردی براساس توازی سازی می باشد اجرا دستورالعمل ها یا برنامه های نوشته شده و اجرا آن بروی چندین واحد اجرایی یا رگه ها. تفاوت اصلی این روش با سایر روش های معرفی شده در این می باشد که با استفاده از یک دستورالعمل را نوشته در چندین مجموعه از Register ها یا ثبات ها // آدرس دهی متعدد به سایر دستورات یا متغیرها همراه با چندین مسیر باعث می شود هر رگه بتواند چندین Elements را در یک زمان اجرا کند تا یکی از ان را.
استفاده از SMIT ها برای بهبود در توان عملیاتی و اجرای دستورات بروی چندین رگه می باشد که باعث بهبود در پردازش و کمتر شدن تاخیر بسیار زیاد در اجرای برنامه های توسعه داده شده است.مشکلی سال هاست توسعه دهندگان با ان سروکار دارند حرکت به سمت چند رگه بودن در تمامی سطوح می باشد چه بازی های رایانه ای ، برنامه های کاربردی و سیستمی و ... تک رگه بودن برنامه باعث می شود میلیون ها میلیون کد خطی که برای یک برنامه یا نرم افزار توسعه داده شده است با تاخیر زیادی همراه باشد که خود در کنار آن باعث افزایش هزینه های مالی و زمانی زیادی می شود. با استفاده از این SMIT می توانیم سخت افزارهای که IDLE هستند را یافته و فرایند اجرای برنامه ها با استفاده از آن ها آسان نماییم. یکی از این روش های Switch بین رگه های می باشد که به صورت عمومی در بین توسعه دهندگان در حال اجراء می باشد.