CHAMALZ
جمعه 07 اسفند 1394, 14:15 عصر
با سلام و خسته نباشید من نیاز دارم یک حلقه تعداد زیادی اجرا بشه مثلا 90 میلیارد دفعه ولی زمان اجرا خیلی خیلی زیاده (چندین ماه طول میکشه)حتی با قویترین پردازنده ها و با زبان های برنامه نویسی مختلف و سیستم عامل های مختلف تست کردم . به عنوان مثال در c# :
for (long i = 0; i < 999999999999999999; i++)
{
}
MessageBox.Show("Ended");
با حلقه موازی هم خیلییی طول میکشه
Parallel.For(0, 999999999999999999, i =>
{
});
MessageBox.Show("Ended");
همانطور که مشاهده میکنید داخل بدنه حلقه هم هیچ کدی نیست و اینقدر زمان میبرد!! فقط یک کد i++ اجرا میشود.
لطفا راهنمایی کنید راه حل چیست ؟؟ باید منتظر نسل جدید پردازنده ها باشم ؟ ماشین حساب ویندوز چطور این همه سرعت دارد ؟؟ از چه کد هایی استفاده میکند که سرعت اجرایی بسیار زیادی دارد ؟ با تشکر
for (long i = 0; i < 999999999999999999; i++)
{
}
MessageBox.Show("Ended");
با حلقه موازی هم خیلییی طول میکشه
Parallel.For(0, 999999999999999999, i =>
{
});
MessageBox.Show("Ended");
همانطور که مشاهده میکنید داخل بدنه حلقه هم هیچ کدی نیست و اینقدر زمان میبرد!! فقط یک کد i++ اجرا میشود.
لطفا راهنمایی کنید راه حل چیست ؟؟ باید منتظر نسل جدید پردازنده ها باشم ؟ ماشین حساب ویندوز چطور این همه سرعت دارد ؟؟ از چه کد هایی استفاده میکند که سرعت اجرایی بسیار زیادی دارد ؟ با تشکر