۰
subtitle
ارسال: #۱
  
سوال کنکور مهندسی کامپیوتر سال ۸۵ و علوم کامپیوتر سال ۸۶ و۸۸
با سلام .من تو فصل دوم کتاب ۳ تا مشکل دارم که ازتون میخوام کمک کنید.ممنون
۱-تست کامپیوتر۸۵
۲-تست علوم کامپیوتر ۸۸ (توضیح فرمولش)
۳-تست علوم کامپیوتر ۸۶
۱-تست کامپیوتر۸۵
۲-تست علوم کامپیوتر ۸۸ (توضیح فرمولش)
۳-تست علوم کامپیوتر ۸۶
۰
ارسال: #۲
  
RE: فصل دوم معماری پوران پژوهش
اول اینکه وقتی بحث speed up مطرح میشه ما نیاز داریم که زمان اجرای برنامه را قبل از تغییر و زمان آن را بعد از تغییر بدست بیاریم.
زمان اجرا برای هر برنامه: تعداد کلاک برنامه به ازای هر دستور * تعداد دستورات* زمان کلاک
در مورد این سوال کل برنامه به دو قسمت تقسیم شده،قسمتی مربوط به عملیات محاسباتی و قسمتی مربوط به عملیات IO.
و چون میدونیم که یک دستور خوانده شده از حافظه باعث انجام یک عمل میشه،در اینجا گفته که مجموعه ای از هر عملیاتی به ۳ دسته دستور تقسیم می شود----> دستورات صحیح و دستورات ممیز شناور و بقیه دستورات(شامل هر دستوری بجز صحیح و ممیز شناور)
هر ۳ مجموعه دستورات که گفته شد می تونن منجر به عملیات محاسباتی بشن.پس عملیات محاسباتی شامل----> 40% صحیح و ۳۰% ممیز و ۳۰% بقیه دستورات
اما عملیات IO نیاز به دستوراتی دارد که منجر به کار های مربوط به وسایل ورودی خروجی باشد(مثل زمان مربوط به خواندن از ورودی ،نوشتن در خروجی و غیره) و مشخص است که به دستورات صحیح و ممیز شناور ربطی نداره.چون این گونه دستورات بر روی دادهها عمل می کنند اما ما در اینجا با وسایل سخت افزاری سر وکار داریم،بنابراین کل عملیات IO میشه ----> 0% دستورات صحیح و ۰% دستورات ممیز و ۱۰۰% بقیه دستورات.
زمان اجرای برنامه قبل از تغییر--->زمان اجرای عملیات محاسباتی* ۸۲% + زمان اجرای عملیات IO * 18%
ما تعداد دستورات در هر عملیات را داریم و کلاک به ازای هر دستور را هم داریم(CPI):
زمان عملیات محاسباتی ------>(T زمان کلاک)
[tex](\frac{40}{100}*1)T (\frac{30}{100}*5)T (\frac{30}{100}*2)T= 2.5 T[/tex]
زمان عملیات IO:
[tex](\frac{0}{100}*1)T (\frac{0}{100}*5)T (\frac{100}{100}*2)T= 2 T[/tex]
زمان قبل از تغییر:
[tex](\frac{82}{100}*2.5T) (\frac{18}{100}*2T)= 2.41 T[/tex]
حالا فقط در فرمول مربوط به زمان عملیات محاسباتی تغییر ایجاد شده که این تغییر میشه:
[tex](\frac{40}{100}*1)T (\frac{30}{100}*3)T (\frac{30}{100}*2)T= 1.9 T[/tex]
و زمان اجرا بعد تغییر:
[tex](\frac{82}{100}*1.9T) (\frac{18}{100}*2T)= 1.918 T[/tex]
و در آخر:
[tex]Speed up = \frac{2.41}{1.918}= 1.256[/tex]
که به گزینهی ۱ نزدیکتره
زمان اجرا برای هر برنامه: تعداد کلاک برنامه به ازای هر دستور * تعداد دستورات* زمان کلاک
در مورد این سوال کل برنامه به دو قسمت تقسیم شده،قسمتی مربوط به عملیات محاسباتی و قسمتی مربوط به عملیات IO.
و چون میدونیم که یک دستور خوانده شده از حافظه باعث انجام یک عمل میشه،در اینجا گفته که مجموعه ای از هر عملیاتی به ۳ دسته دستور تقسیم می شود----> دستورات صحیح و دستورات ممیز شناور و بقیه دستورات(شامل هر دستوری بجز صحیح و ممیز شناور)
هر ۳ مجموعه دستورات که گفته شد می تونن منجر به عملیات محاسباتی بشن.پس عملیات محاسباتی شامل----> 40% صحیح و ۳۰% ممیز و ۳۰% بقیه دستورات
اما عملیات IO نیاز به دستوراتی دارد که منجر به کار های مربوط به وسایل ورودی خروجی باشد(مثل زمان مربوط به خواندن از ورودی ،نوشتن در خروجی و غیره) و مشخص است که به دستورات صحیح و ممیز شناور ربطی نداره.چون این گونه دستورات بر روی دادهها عمل می کنند اما ما در اینجا با وسایل سخت افزاری سر وکار داریم،بنابراین کل عملیات IO میشه ----> 0% دستورات صحیح و ۰% دستورات ممیز و ۱۰۰% بقیه دستورات.
زمان اجرای برنامه قبل از تغییر--->زمان اجرای عملیات محاسباتی* ۸۲% + زمان اجرای عملیات IO * 18%
ما تعداد دستورات در هر عملیات را داریم و کلاک به ازای هر دستور را هم داریم(CPI):
زمان عملیات محاسباتی ------>(T زمان کلاک)
[tex](\frac{40}{100}*1)T (\frac{30}{100}*5)T (\frac{30}{100}*2)T= 2.5 T[/tex]
زمان عملیات IO:
[tex](\frac{0}{100}*1)T (\frac{0}{100}*5)T (\frac{100}{100}*2)T= 2 T[/tex]
زمان قبل از تغییر:
[tex](\frac{82}{100}*2.5T) (\frac{18}{100}*2T)= 2.41 T[/tex]
حالا فقط در فرمول مربوط به زمان عملیات محاسباتی تغییر ایجاد شده که این تغییر میشه:
[tex](\frac{40}{100}*1)T (\frac{30}{100}*3)T (\frac{30}{100}*2)T= 1.9 T[/tex]
و زمان اجرا بعد تغییر:
[tex](\frac{82}{100}*1.9T) (\frac{18}{100}*2T)= 1.918 T[/tex]
و در آخر:
[tex]Speed up = \frac{2.41}{1.918}= 1.256[/tex]
که به گزینهی ۱ نزدیکتره
ارسال: #۳
  
RE: فصل دوم معماری پوران پژوهش
(۱۵ آذر ۱۳۹۰ ۱۰:۵۱ ق.ظ)homa نوشته شده توسط: هر ۳ مجموعه دستورات که گفته شد می تونن منجر به عملیات محاسباتی بشن.پس عملیات محاسباتی شامل----> 40% صحیح و ۳۰% ممیز و ۳۰% بقیه دستوراتسلام سوال بنده هم همین قسمت است.مگر محاسبات جدای از i/o نیست.اگر اینطوره پس چرا شما درصد i/0 توی محاسبات را صفر نگرفتی؟
ما تعداد دستورات در هر عملیات را داریم و کلاک به ازای هر دستور را هم داریم(CPI):
زمان عملیات محاسباتی ------>(T زمان کلاک)
[tex](\frac{40}{100}*1)T (\frac{30}{100}*5)T (\frac{30}{100}*2)T= 2.5 T[/tex]
(اینکار شما دقیقا مثل حل دوست عزیزمون ahmadnuri است، بنده هم دقیقا سوالم همینجاست؟
ممنون میشم اگه دلیل قانع کننده ای دارین بیارین تا من هم از سردرگمی بیام بیرون.
باز هم تشکر میکنم از جوابی که دادین.
۰
۰
ارسال: #۵
  
RE: فصل دوم معماری پوران پژوهش
سوال ۷۳
اگه زمان کل برنامه رو ۱۰۰ در نظر بگیریم
پیشنهاد ۱ گفته ۲۰ در صد برنامه رو ۱۰ برابر سریعتر کنیم پس ۲۰ در صد برنامه زمان اجراش با توجه به فرضی که گرفتم میشه ۲۰ ثانیه اگه ۲۰ ثانیه رو ۱۰ برابر سریعتر بکنیم میشه ۲ ثانیه که با ۸۰ در صد بدون تغییر برنامه میشه کلا ۸۲ ثانیه
پیشنهاد ۲ گفته ۵۰ در صد برنامه رو ۲ با سریعتر کنیم یعنی در زمان ۲۵ ثانیه انجام بده که با ۵۰ در صد قبلی بدون تغییرش میشه ۷۵ ثانیه
در نتیجه ماشین ۲ سریعتر عمل می کنه که گزینه ۲ درسته
سوال ۱۰۱
[tex]cpi=\frac{A 5B}{Ic}=2[/tex]
[tex]A 5B=2*10^{7}[/tex]
[tex]A B=10^{7}[/tex]
با حل این دو معادله میشه
[tex]B=2.5*10^{6}[/tex]
سوال ۱۱۰
ببینید تواین سوال cpi برنامه عوض شده اون هم فقط مربوط به ۸۲ درصد برنامه میشه
[tex]CPI_{old}=.4 .3*5 .3*2=2.5[/tex]
[tex]CPI_{new}=.4 .3*3 .3*2=1.9[/tex]
[tex]su=\frac{exe_{old}}{exe_{new}}=\frac{2.5* .82 2*.18}{1.9*.82 2*.18}=\frac{2.41}{1.918}= 1.256[/tex]
که به گزینه ۱ نزدیکتره
اگه زمان کل برنامه رو ۱۰۰ در نظر بگیریم
پیشنهاد ۱ گفته ۲۰ در صد برنامه رو ۱۰ برابر سریعتر کنیم پس ۲۰ در صد برنامه زمان اجراش با توجه به فرضی که گرفتم میشه ۲۰ ثانیه اگه ۲۰ ثانیه رو ۱۰ برابر سریعتر بکنیم میشه ۲ ثانیه که با ۸۰ در صد بدون تغییر برنامه میشه کلا ۸۲ ثانیه
پیشنهاد ۲ گفته ۵۰ در صد برنامه رو ۲ با سریعتر کنیم یعنی در زمان ۲۵ ثانیه انجام بده که با ۵۰ در صد قبلی بدون تغییرش میشه ۷۵ ثانیه
در نتیجه ماشین ۲ سریعتر عمل می کنه که گزینه ۲ درسته
سوال ۱۰۱
[tex]cpi=\frac{A 5B}{Ic}=2[/tex]
[tex]A 5B=2*10^{7}[/tex]
[tex]A B=10^{7}[/tex]
با حل این دو معادله میشه
[tex]B=2.5*10^{6}[/tex]
سوال ۱۱۰
ببینید تواین سوال cpi برنامه عوض شده اون هم فقط مربوط به ۸۲ درصد برنامه میشه
[tex]CPI_{old}=.4 .3*5 .3*2=2.5[/tex]
[tex]CPI_{new}=.4 .3*3 .3*2=1.9[/tex]
[tex]su=\frac{exe_{old}}{exe_{new}}=\frac{2.5* .82 2*.18}{1.9*.82 2*.18}=\frac{2.41}{1.918}= 1.256[/tex]
که به گزینه ۱ نزدیکتره
ارسال: #۶
  
RE: فصل دوم معماری پوران پژوهش
(۲۲ مهر ۱۳۹۰ ۰۵:۱۹ ب.ظ)ahmadnouri نوشته شده توسط: سوال ۱۱۰
ببینید تواین سوال cpi برنامه عوض شده اون هم فقط مربوط به ۸۲ درصد برنامه میشه
[tex]CPI_{old}=.4 .3*5 .3*2=2.5[/tex]
[tex]CPI_{new}=.4 .3*3 .3*2=1.9[/tex]
[tex]su=\frac{exe_{old}}{exe_{new}}=\frac{2.5* .82 2*.18}{1.9*.82 2*.18}=\frac{2.41}{1.918}= 1.256[/tex]
که به گزینه ۱ نزدیکتره
سلام.
میشه بگید چطوری چرا شما برای ۰/۸۲ از cpi استفاده کردین ولی برای قسمت ۰/۱۸ اینکار را نکردین و از خود تعداد کلاک این قسمت استفاده کردین.
به نظر من اینکار اشتباه است ،لطفا نظر بدین؟
۰
ارسال: #۷
  
RE: فصل دوم معماری پوران پژوهش
منم که برای IO هم Cpi خودشو نوشتم ببینید برنامه ۲ تکه است یه تکه مربوط به IO با CPI مشخص خودش (یعنی ۲ )و یه تکه مربوط به محاسبات با CPI مربوط به خودش
فقط به این نکته باید توجه کنیم که CPI قسمت محاسبت عوض شده و قسمت IO تغییری نداشته
[tex]Su=\frac{CPI_{old}*.82 CPI_{IO}*.18}{CPI_{new}*.82 CPI_{IO}*.18}[/tex]
فکر کنم مشکل شما اینه که هر دو قسمت رو با هم حساب می کنین
اگه فکر می کنید توضیحم اشتباهه دلیلتون رو بگید تا من اشکالم رو بدونم
فقط به این نکته باید توجه کنیم که CPI قسمت محاسبت عوض شده و قسمت IO تغییری نداشته
[tex]Su=\frac{CPI_{old}*.82 CPI_{IO}*.18}{CPI_{new}*.82 CPI_{IO}*.18}[/tex]
فکر کنم مشکل شما اینه که هر دو قسمت رو با هم حساب می کنین
اگه فکر می کنید توضیحم اشتباهه دلیلتون رو بگید تا من اشکالم رو بدونم
۰
ارسال: #۸
  
فصل دوم معماری پوران پژوهش
سلام.
منظورتون را کامل فهمیدم ولی مسئله اینجاست که شما cpi کل سه قسمت یعنی محاسبات صحیح+اعشاری+بقیه را حساب کردید ولی برای قسمت دوم از cpi دستورات دیگه استفاده کردید(منظور من قسمت اول یعنی زمان محاسبات)
برای قسمت اول ابتدا cpi را حساب می کنیم که همین طور که دوست عزیزمون گفته میشه ۲/۵
بعد زمان اجرا را برای قسمت اول حساب می کنیم که میشه: ۲/۵ که محاسبات آنرا اگه p بنامیم مشه برایر ۲/۰۵
و i/o انرا اگه i بنامیم میشه ۰/۴۵ .که این این i با قسمت i/o قسمت دوم یکی است ولی بخش اول قسمت دوم برابر میشه
با ۱/۵۵۸/
ودر کل اگه زمان قسمت اول را بر قسمت دوک تقسیم کنیم جواب میشه دقیقا ۱/۲۴۵
(من هم پست قبلی را ویرایش کردم).
جواب شما توی قسمت I/o منظورم بود که مشکل داره
منظورتون را کامل فهمیدم ولی مسئله اینجاست که شما cpi کل سه قسمت یعنی محاسبات صحیح+اعشاری+بقیه را حساب کردید ولی برای قسمت دوم از cpi دستورات دیگه استفاده کردید(منظور من قسمت اول یعنی زمان محاسبات)
برای قسمت اول ابتدا cpi را حساب می کنیم که همین طور که دوست عزیزمون گفته میشه ۲/۵
بعد زمان اجرا را برای قسمت اول حساب می کنیم که میشه: ۲/۵ که محاسبات آنرا اگه p بنامیم مشه برایر ۲/۰۵
و i/o انرا اگه i بنامیم میشه ۰/۴۵ .که این این i با قسمت i/o قسمت دوم یکی است ولی بخش اول قسمت دوم برابر میشه
با ۱/۵۵۸/
ودر کل اگه زمان قسمت اول را بر قسمت دوک تقسیم کنیم جواب میشه دقیقا ۱/۲۴۵
(من هم پست قبلی را ویرایش کردم).
جواب شما توی قسمت I/o منظورم بود که مشکل داره
۰
ارسال: #۹
  
RE: فصل دوم معماری پوران پژوهش
ببینید به نظر من کل برنامه به صورت شکل ضمیمه است
و قسمت IO عوض نشده و طبق فرمول پست قبلی ۱۸/* CPI _IO و قسمت محاسبات عوض شده پس اون قسمت رو عوض می کنیم( یعنی CPI اون قسمت عوض شده و لازم نیست کل CPI برنامه رو عوض کنیم)
گزینه درست کدوم گزینه است؟
و قسمت IO عوض نشده و طبق فرمول پست قبلی ۱۸/* CPI _IO و قسمت محاسبات عوض شده پس اون قسمت رو عوض می کنیم( یعنی CPI اون قسمت عوض شده و لازم نیست کل CPI برنامه رو عوض کنیم)
گزینه درست کدوم گزینه است؟
۰
ارسال: #۱۰
  
فصل دوم معماری پوران پژوهش
سلام
پست بالا که زدم را بخون دقیق، هر جاش را نفهمیدی برات توضیح می دم
جواب هم دقیقا ۱/۲۴۵ هستش
پست بالا که زدم را بخون دقیق، هر جاش را نفهمیدی برات توضیح می دم
جواب هم دقیقا ۱/۲۴۵ هستش
۰
ارسال: #۱۱
  
فصل دوم معماری پوران پژوهش
۰
ارسال: #۱۲
  
فصل دوم معماری پوران پژوهش
من از تعداد دستورات و زمان کلاک فاکتور گرفتم.
دوست من مگه جواب ۱/۲۴۵ نیست من اصلا گزینه صحیح سازمان سنجش را نمیدونم چی گفته؟
دوست من مگه جواب ۱/۲۴۵ نیست من اصلا گزینه صحیح سازمان سنجش را نمیدونم چی گفته؟
۰
ارسال: #۱۳
  
فصل دوم معماری پوران پژوهش
بله گزینه ۱ اه منظور شما اینه که چون CPI_old رو که بدست آوردیم و ۲/۵ شده پسCPI_ io رو هم باید ۲/۵ بگیریم
و من از روی این که گفته CPI بقیه ۲ اه گفتم IO شامل بقیه میشه پس CPI بقیه رو ۲ گرفتم
دقیقا نمی دونم کدوم روش درسته
و من از روی این که گفته CPI بقیه ۲ اه گفتم IO شامل بقیه میشه پس CPI بقیه رو ۲ گرفتم
دقیقا نمی دونم کدوم روش درسته
۰
ارسال: #۱۴
  
RE: فصل دوم معماری پوران پژوهش
حل سوال ۱:
اگر زمان اجرای برنامه t باشد زمان اجرای تابع ریشه دوم ۰/۲t است و زمان عملیات ممیز شناور ۰/۵ می باشد.
زمان با توجه به پیشنهاد ۱: ۰/۸t+(0.2t/10 (چون فقط زمان اجرای تابع ریشه دوم ۱/۱۰ میشود)
زمان با توجه به پیشنهاد ۲: (۰/۵t+(0.5t/2( چون فقط عملیات ممیز شناور را تسریع کرده ایم)
کسی میتونه این سوال رو با اطمینان و دقیق جواب بده ؟ (همون سوال ۲ دوستمون )
اگر زمان اجرای برنامه t باشد زمان اجرای تابع ریشه دوم ۰/۲t است و زمان عملیات ممیز شناور ۰/۵ می باشد.
زمان با توجه به پیشنهاد ۱: ۰/۸t+(0.2t/10 (چون فقط زمان اجرای تابع ریشه دوم ۱/۱۰ میشود)
زمان با توجه به پیشنهاد ۲: (۰/۵t+(0.5t/2( چون فقط عملیات ممیز شناور را تسریع کرده ایم)
کسی میتونه این سوال رو با اطمینان و دقیق جواب بده ؟ (همون سوال ۲ دوستمون )
۰
ارسال: #۱۵
  
فصل دوم معماری پوران پژوهش
۰
ارسال: #۱۶
  
فصل دوم معماری پوران پژوهش
یعنی میگید محاسباتی هم داخل آنها هست .میشه بگید چه محاسباتی؟یک مثال بزنید؟
ارسال: #۱۷
  
RE: فصل دوم معماری پوران پژوهش
۰
ارسال: #۱۸
  
فصل دوم معماری پوران پژوهش
خوب تا اینجا درست.مگه محاسبات + I/o نمیشه زمان اجرا؟پس چرا برای زمان اجرای قبل از بهبود شما درصدها را دخالت دادین؟مگه ما نباید ابتدا زمان اجرا را قبل از بهبود بدست بیاریم و بعد با توجه به آن بگیم ۰/۱۸ درصدش ثابت است در قبل و بعد از بهبود و ۰/۸۲ درصد که تغییر میکنه را برای بعد از بهبود محاسبه کرده و حالا با توجه به آنها میزان تسریع را بدست بیاریم.
(منظور من اینجاست که چرا برای قبل از بهبود شما ۰/۱۸ را در زمان i/o و ۰/۸۲ را در زمان محاسبات ضرب کردید.).
یعنی در واقع شما امدین ۰/۱۸ زمان ورودی و خروجی و ۰/۸۲ زمان محاسبات را برای زمان اجرای قبل از بهبود در نظر گرفتید.
شما به نظر من در صورتی اون محاسباتتون درسته که دستور ما فقط i/o یا فقط محاسباتی باشه درست در میاد.ولی ما ینجا ممکنه ترکیبی از دستورات i/i و محاسباتی داشته باشیم.
لطفا دوستا نظر بدین؟
(منظور من اینجاست که چرا برای قبل از بهبود شما ۰/۱۸ را در زمان i/o و ۰/۸۲ را در زمان محاسبات ضرب کردید.).
یعنی در واقع شما امدین ۰/۱۸ زمان ورودی و خروجی و ۰/۸۲ زمان محاسبات را برای زمان اجرای قبل از بهبود در نظر گرفتید.
شما به نظر من در صورتی اون محاسباتتون درسته که دستور ما فقط i/o یا فقط محاسباتی باشه درست در میاد.ولی ما ینجا ممکنه ترکیبی از دستورات i/i و محاسباتی داشته باشیم.
لطفا دوستا نظر بدین؟
ارسال: #۱۹
  
RE: فصل دوم معماری پوران پژوهش
سلام.
دوستان من حل این سوال را ضمیمه کردم لطفا نظر بدین؟
دوستان من حل این سوال را ضمیمه کردم لطفا نظر بدین؟
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close