پاسخ: مشاوره برای گرافیک GT 710
نقل قول:
خب یکم گیج شدم.
خودت توضیح دادی که نخ یعنی درب ورودی.
بعد الآن میگی که همزمان ورود اطلاعات رخ نمیده؟!
یعنی HT فقط یه سویچ ساده هست، برای افزایش بازدهی اونم به مقدار خیلی معمولی؟
نمیخوام لج کنم ولی خداوکیلی توی توضیحات خود ویکیپدیا هم باز به همین نتیجه رسیدم که همزمان در حال انجام هست و HT درواقع پُر کننده ی ظرفیت پردازش سی پی یو هستش»»
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
در این هایپر تردینگ مشاهده میکنید که دستورالعمل ها (رنگ های مختلف،یعنی مال برنامه های مختلفی هستند) از رم وارد فرانت اند میشن و تقسیم بنده میشن و سپس وارد پردازشگر مرکزی شده و این پردازشگر قابلیت محاسبه ی دستورالعمل ها از 2برنامه ی مختلف بصورت همزمان در هر سیکل کاری خودش رو داره.
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
الآن یه مقدار گیج شدم، یهو نخ رو گفتی که از معنای یک درب ورودی تبدیل شد به مجموعه ای از دستورالعمل ها.
بعدش، اینکه یه هسته 2نخ داشته باشه، ولی هر موقع هر چیزیکه زمان بر بود بزاره کنار و پردازش نکنه، من نشنیدم چنین چیزی رو. یعنی واقعا جایی ندیدم و نخونده بودم. اصلا در واقع زمان بر بودن ملاک نیست، یه سری دستورالعمل ها وارد هسته میشن و پردازش میشن در ایکی ثانیه، دیگه زمان بر بودن نداره، این دستورالعمل ها یا اعداد اولن، یا ضرب، یا جمع یا فلان و... و همگی همزمان پردازش میشن.
البته بحثش سنگین هست و من در حد و حدود خودم یه چیزای ساده ای بلد هستم.همینم از دست دادم با این بحث پیچ در پیچی که شد :1. (38)::11():
=========
خب گفتم که باید FRAFs رو هم در کنار FRAPs نصب کنی، الآن دانلود میکنم ببینم قضیه اش چیه.
با نرم افزار MSI AfterBurner میشه خیلی راحته، در کنارش نرم افزار Riva Turner نصب میشه که این MSI AfterBurner فریم ها رو دریافت میکنه،دما و فلان و بیسار، و RIVA توی بازی ها اون گوشه مینویستش.برو توی سایت Msi آخرین نسخه اش رو دانلود کن جاییش مشکل داشتی حتما خبرم کن، باهاش خوب آشنا هستم.
قربانت برم.:11()::great::wink:
من اون مثالی که زدم ، مثال بودها . کاملا با واقعیت شاید منطبق نبوده باشه ولی سعی کردم منطبق ترین باشه
کجا گفتم همزمان ورود اطلاعات رخ نمیده برای چند نخی؟
من هم خودم چندان بلد نیستم و تا جایی که درک کردم رو دارم میگم (که اطلاعات به اشتراک بذاریم)
ببین نه اینکه چند نخی سوئیچ بین اطلاعات در هسته ها باشه ولی تک نخی این قابلیت رو نداشته باشه . هر دو ، سوئیچ هسته بین اطلاعات انجام میدن ولی در چند نخی خیلی سریعتر انجام میشه و باعث کم شدن معطلی هسته میشه (قضیه ی همون یه در و دو در که برای کارخونه مثال زدم . اف چهاردر منظورم نیست ها :Love-ssa~! (1):) .
اون شکل هم درست گفت . با گفته ی من تناقضی نداره . کلمه ی "همزمان یعنی sametime" رو برای چند نخی بکار نبرد . کلمه ی "same clock cycle" رو بکار برد . یعنی در طول همون سیکل کلاک ، دو نخ رو پردازش میکنه . این به این معنی نیست که همزمان با هم انجام میده . منظورش اینه که تا یه سیکل کاری تموم شه ، دو نخ رو پردازش میکنه. یعنی اول یکی رو پردازش میکنه (و ممکنه وسطای پردازش یه نخ ، اون نخ رو متوقف اش کنه) و بعد سراغ نخ بعدی میره و .... که توضیح دادم (بازم میگم که پردازش همزمان ، فقط در هسته های متفاوت انجام میشه)
---------------------
اون درب ورودی کارخونه ، همون نخ پردازنده هست یعنی اگه پردازنده ای چند نخی نباشه ، پس هر هسته یک نخ داره (هر کارخونه ، یه در داره) و اگه چند نخی باشه ، هر کدوم 2 نخ دارن (هر کارخونه ، 2 در داره) . هر هسته در چند نخی ، از 2 نخ بیشتر نداره (یعنی هر کارخونه از 2 در بیشتر نداره) . اون نخ که گفتم مجموعه ای از دستورالعمل هاست ، اون نخ پروسه هاست یعنی زمانی که برنامه نویس ، نخ ایجاد میکنه برای پروسه و برنامه ی خودش . این نخ ، همون مثال خانواده هست . خانواده ای که 5 نفر رو فرستاد برای کوپن گرفتن از کارخونه دار ، تعداد افراد ، همون تعداد نخ ها هستن. الان توی این قضیه که 5 نفر فرستاده شدن ، یعنی اینکه برنامه نویس ، همزمان 5 نخ رو برای برنامه اش برای پردازش درخواست کرد (بعد اینو توی پست های بالاتر گفتم که هر نخ از یه در ورودی میره و اما هیچ وقت همزمان پردازش نمیشن در یه هسته). خوب حالا هر نفر ، ممکنه درخواست های متفاوتی داشته باشن . یکی مثلا شکر و ماست میخواد و یکی دیگه از این 5 نفر ، مثلا 20 قلم کالا میخواد ، یکی دیگه فقط یه دونه کالا میخواد و ... . این درخواست های هر نفر (که تعداد و نوع اش میتونه متفاوت باشه) ، همون تعداد دستورالعمل هایی هست که هر نخ به هسته ها برای پردازش میفرستن.
اگه با برنامه نویسی آشنایی ، نخ چیزی جز تابع نیست . داخل تابع هم میشه انواع عملیات رو انجام داد مثل فراخونی توابع دیگه و تعریف متغییرها و بسیاری کارهای دیگه که نهایت به دستورالعمل های ریاضی تبدیل میشن برای پردازش یا ذخیره در رم یا فراخونی اطلاعات
نگاه کن ، همونطور که توی اون لینکی که دادم ، زمانی که در یه نخ ، یه دستورالعمل نیاز به خوندن یا نوشتن اطلاعات از رم داره ، پردازنده معطل میمونه و نمیتونه بقیه ی نخ ها رو منتظر بذاره تا این دستورالعمل با سرعت کند رم بخواد اطلاعات رو بخونه یا بنویسه (کلمه ی fetch که در انگلیسی بالا دادی ، موقع خوندن اطلاعات از رم توسط cpu میگن) یا کلا مثال ساده تر و قابل ملموس تر اینکه اگه ویژال استودیو داری ، کد زیر رو توی برنامه ی ویندوز فورم سی شارپ (داخل هر رویداد) بنویس و اون رویداد رو اجراش کن :
کد:
System.Threading.Thread.CurrentThread.Suspend();
میبینی که برنامه ی سی شارپ دیگه کار نمیکنه و قفل میکنه . بخاطر اینه که نخ اصلی ای که برنامه ی سی شارپ در حال اجرا شدن توش بود رو متوقف کرد تا بعد در رویدادی دوباره ادامه بده (resume بشه) . خوب اگه قرار باشه تا زمانی که دوباره درخواست ادامه دادن توسط این نخ بشه ، تا اون زمان هسته ای که اینو پردازش کرد ، نخواد ازش دست برداره و بازم باهاش درگیر باشه ، پس توی یه پردازنده ی 2 هسته ای 2 نخ وقتی این برنامه اجرا میشه ، یه هسته شو درگیر کرده و ول نمیکنه و بنابراین دوباره یه اجرای دیگه از این برنامه انجام بدیم و دوباره این اتفاق بیفته (متوقف شدن نخ) پس هسته ی دوم رو هم در اون پردازنده درگیر میکنه و ول نمیکنه بنابراین کل هسته ها کاملا اشغال شده اند و هیچ برنامه ی دیگه ای رو نمیتونن برای پردازش بپذیرن بنابراین هیچ نرم افزاری رو نمیتونه طرف اجرا کنه و حتی دستورات حرکت موس هم پردازش نمیشه و موس هم کار نمیکنه و کل کامپیوتر باید قفل بشه
اما میبینیم که نه. این طور نیست . با اونکه توی پردازنده ی 2 هسته ای ، 2 تا پروسه ی مجزا ، نخ هاش متوقف شدن ، ولی بقیه ی برنامه ها و نخ ها دارن پردازش میشن
اگه میخوای ، برنامه شو بهت بدم تا تست کنی (اگه ویژال استودیو نداری)
------------------
ممنون
باشه اون نرم افزار msi رو تست میکنم
پاسخ: مشاوره برای گرافیک GT 710
نقل قول:
من اون مثالی که زدم ، مثال بودها . کاملا با واقعیت شاید منطبق نبوده باشه ولی سعی کردم منطبق ترین باشه
کجا گفتم همزمان ورود اطلاعات رخ نمیده برای چند نخی؟
من هم خودم چندان بلد نیستم و تا جایی که درک کردم رو دارم میگم (که اطلاعات به اشتراک بذاریم)
ببین نه اینکه چند نخی سوئیچ بین اطلاعات در هسته ها باشه ولی تک نخی این قابلیت رو نداشته باشه . هر دو ، سوئیچ هسته بین اطلاعات انجام میدن ولی در چند نخی خیلی سریعتر انجام میشه و باعث کم شدن معطلی هسته میشه (قضیه ی همون یه در و دو در که برای کارخونه مثال زدم . اف چهاردر منظورم نیست ها :Love-ssa~! (1):) .
اون شکل هم درست گفت . با گفته ی من تناقضی نداره . کلمه ی "همزمان یعنی sametime" رو برای چند نخی بکار نبرد . کلمه ی "same clock cycle" رو بکار برد . یعنی در طول همون سیکل کلاک ، دو نخ رو پردازش میکنه . این به این معنی نیست که همزمان با هم انجام میده . منظورش اینه که تا یه سیکل کاری تموم شه ، دو نخ رو پردازش میکنه. یعنی اول یکی رو پردازش میکنه (و ممکنه وسطای پردازش یه نخ ، اون نخ رو متوقف اش کنه) و بعد سراغ نخ بعدی میره و .... که توضیح دادم (بازم میگم که پردازش همزمان ، فقط در هسته های متفاوت انجام میشه)
---------------------
اون درب ورودی کارخونه ، همون نخ پردازنده هست یعنی اگه پردازنده ای چند نخی نباشه ، پس هر هسته یک نخ داره (هر کارخونه ، یه در داره) و اگه چند نخی باشه ، هر کدوم 2 نخ دارن (هر کارخونه ، 2 در داره) . هر هسته در چند نخی ، از 2 نخ بیشتر نداره (یعنی هر کارخونه از 2 در بیشتر نداره) . اون نخ که گفتم مجموعه ای از دستورالعمل هاست ، اون نخ پروسه هاست یعنی زمانی که برنامه نویس ، نخ ایجاد میکنه برای پروسه و برنامه ی خودش . این نخ ، همون مثال خانواده هست . خانواده ای که 5 نفر رو فرستاد برای کوپن گرفتن از کارخونه دار ، تعداد افراد ، همون تعداد نخ ها هستن. الان توی این قضیه که 5 نفر فرستاده شدن ، یعنی اینکه برنامه نویس ، همزمان 5 نخ رو برای برنامه اش برای پردازش درخواست کرد (بعد اینو توی پست های بالاتر گفتم که هر نخ از یه در ورودی میره و اما هیچ وقت همزمان پردازش نمیشن در یه هسته). خوب حالا هر نفر ، ممکنه درخواست های متفاوتی داشته باشن . یکی مثلا شکر و ماست میخواد و یکی دیگه از این 5 نفر ، مثلا 20 قلم کالا میخواد ، یکی دیگه فقط یه دونه کالا میخواد و ... . این درخواست های هر نفر (که تعداد و نوع اش میتونه متفاوت باشه) ، همون تعداد دستورالعمل هایی هست که هر نخ به هسته ها برای پردازش میفرستن.
اگه با برنامه نویسی آشنایی ، نخ چیزی جز تابع نیست . داخل تابع هم میشه انواع عملیات رو انجام داد مثل فراخونی توابع دیگه و تعریف متغییرها و بسیاری کارهای دیگه که نهایت به دستورالعمل های ریاضی تبدیل میشن برای پردازش یا ذخیره در رم یا فراخونی اطلاعات
نگاه کن ، همونطور که توی اون لینکی که دادم ، زمانی که در یه نخ ، یه دستورالعمل نیاز به خوندن یا نوشتن اطلاعات از رم داره ، پردازنده معطل میمونه و نمیتونه بقیه ی نخ ها رو منتظر بذاره تا این دستورالعمل با سرعت کند رم بخواد اطلاعات رو بخونه یا بنویسه (کلمه ی fetch که در انگلیسی بالا دادی ، موقع خوندن اطلاعات از رم توسط cpu میگن) یا کلا مثال ساده تر و قابل ملموس تر اینکه اگه ویژال استودیو داری ، کد زیر رو توی برنامه ی ویندوز فورم سی شارپ (داخل هر رویداد) بنویس و اون رویداد رو اجراش کن :
کد:
System.Threading.Thread.CurrentThread.Suspend();
میبینی که برنامه ی سی شارپ دیگه کار نمیکنه و قفل میکنه . بخاطر اینه که نخ اصلی ای که برنامه ی سی شارپ در حال اجرا شدن توش بود رو متوقف کرد تا بعد در رویدادی دوباره ادامه بده (resume بشه) . خوب اگه قرار باشه تا زمانی که دوباره درخواست ادامه دادن توسط این نخ بشه ، تا اون زمان هسته ای که اینو پردازش کرد ، نخواد ازش دست برداره و بازم باهاش درگیر باشه ، پس توی یه پردازنده ی 2 هسته ای 2 نخ وقتی این برنامه اجرا میشه ، یه هسته شو درگیر کرده و ول نمیکنه و بنابراین دوباره یه اجرای دیگه از این برنامه انجام بدیم و دوباره این اتفاق بیفته (متوقف شدن نخ) پس هسته ی دوم رو هم در اون پردازنده درگیر میکنه و ول نمیکنه بنابراین کل هسته ها کاملا اشغال شده اند و هیچ برنامه ی دیگه ای رو نمیتونن برای پردازش بپذیرن بنابراین هیچ نرم افزاری رو نمیتونه طرف اجرا کنه و حتی دستورات حرکت موس هم پردازش نمیشه و موس هم کار نمیکنه و کل کامپیوتر باید قفل بشه
اما میبینیم که نه. این طور نیست . با اونکه توی پردازنده ی 2 هسته ای ، 2 تا پروسه ی مجزا ، نخ هاش متوقف شدن ، ولی بقیه ی برنامه ها و نخ ها دارن پردازش میشن
اگه میخوای ، برنامه شو بهت بدم تا تست کنی (اگه ویژال استودیو نداری)
------------------
ممنون
باشه اون نرم افزار msi رو تست میکنم
جالب بود استفاده بردم. الآن بیشتر منظور این اچ تی رو متوجه شدم. نه ندارم برنامه اشو...
ازین بحث ها کجا دیدی انجام بشه خداوکیلی!؟:Love-ssa~! (1):
مرسی سجاد جان:11():
پاسخ: مشاوره برای گرافیک GT 710
دوستان اگه امکان داره فونت ها رو bold نکنید چون خوندنش سخت می شه برای اینکه روی یک مطلب تاکید کنید با رنگ متفاوت نشون بدید
همون فونت معمولی که بنویسید ما خودمون روش زوم می کنیم تا بزرگتر بشه
************
اگه می شه یک بحثی هم درباره پردازنده های اینتل و رایزن بکنید که مثلا آیا توی پردازش اطلاعات هسته های اینتل و رایزن یکی عمل می کنن چون من در جایی خوندم که پردازنده های اینتل تو پردازش های محاسباتی بهتر عمل می کنن
یعنی می خوام تفاوت پردازنده های اینتل و رایزن رو تو محاسبه کارهای مختلف بدونم چون اگه هیچ فرقی با هم ندارن خوب خرید پردازنده با هسته بالاتر یک امتیاز محسوب می شه
1 :تعداد فایل پیوست
پاسخ: مشاوره برای گرافیک GT 710
نقل قول:
جالب بود استفاده بردم. الآن بیشتر منظور این اچ تی رو متوجه شدم. نه ندارم برنامه اشو...
ازین بحث ها کجا دیدی انجام بشه خداوکیلی!؟:Love-ssa~! (1):
مرسی سجاد جان:11():
پیوست کردم ، میتونی دانلود کنی . البته باید نسخه ی 4.6.2 یا بالاتر از دات نت رو نصب کنی قبلش (نسخه ی 4.6 نمیشه ها)
روی دکمه ی suspend main thread کلیک کن که باعث توقف نخ اصلی میشه (باعث قفل برنامه میشه) . البته بعد از 15 ثانیه ، توسط نخ دیگه ، اتوماتیک ادامه پیدا میکنه نخ اصلی (که باعث میشه از قفل بودن دربیاد)
خواهش میشود آقا محسن
البته گفتم ، اطلاعات ام کامل نیست و فقط چیزایی که بلد بودم (اگه غلط نباشه) رو خواستم بگم