Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Компьютерлік архитектурадағы формула
Formula in computer architecture
Компьютерлік архитектурада Амдал заңы (немесе Амдалтың тұжырымы) – ресурстары жақсартылған жүйеден күтілетін, белгілі бір жұмыс жүктемесінде тапсырманы орындаудың теориялық жылдамдауын анықтайтын формула. Ол былай тұжырымдайды: "жүйенің бір бөлігін оңтайландыру арқылы қол жеткізілген жалпы өнімділіктің жақсаруы, жақсартылған бөлік нақты қолданылатын уақыттың үлесімен шектеледі". Бұл заң компьютер ғалымы Джин Амдалдың есімімен аталады және 1967 жылы Америкалық ақпаратты өңдеу қоғамының (AFIPS) көктемгі бірлескен компьютерлік конференциясында ұсынылған. Амдал заңы көбінесе параллель есептеулерде бірнеше процессорды пайдаланған кезде теориялық жылдамдауды болжау үшін қолданылады. Мысалы, егер бір жіпті пайдаланып бағдарламаны аяқтауға 20 сағат кетсе, бірақ бағдарламаның бір сағаттық бөлігін параллельдеу мүмкін болмаса, демек, қалған 19 сағаттық (1=p = 0,95) орындалу уақытын ғана параллельдеуге болады, онда бағдарламаны параллель орындау үшін қанша жіп берілсе де, орындалудың ең аз уақыты әрқашан 1 сағаттан артық болады. Сондықтан теориялық жылдамдау бір жіптің өнімділігінен 20 есе кем болады.
In computer architecture, Amdahl's law (or Amdahl's argument) is a formula which gives the theoretical speedup in latency of the execution of a task at fixed workload that can be expected of a system whose resources are improved. It states that "the overall performance improvement gained by optimizing a single part of a system is limited by the fraction of time that the improved part is actually used". It is named after computer scientist Gene Amdahl, and was presented at the American Federation of Information Processing Societies (AFIPS) Spring Joint Computer Conference in 1967. Amdahl's law is often used in parallel computing to predict the theoretical speedup when using multiple processors. For example, if a program needs 20 hours to complete using a single thread, but a one hour portion of the program cannot be parallelized, therefore only the remaining 19 hours' (1=p = 0.95) execution time can be parallelized, then regardless of how many threads are devoted to a parallelized execution of this program, the minimum execution time is always more than 1 hour. Hence, the theoretical speedup is less than 20 times the single thread performance, .
Параллель бағдарламалар
Егер орындалу уақытының 30% жылдамдатуға жататын болса, p 0,3 болады; егер жақсарту әсер ететін бөлікті екі есе жылдамдатса, s 2 болады. Амдал заңы бойынша, жақсартуды қолданудың жалпы жылдамдығы:
If 30% of the execution time may be the subject of a speedup, p will be 0.3; if the improvement makes the affected part twice as fast, s will be 2. Amdahl's law states that the overall speedup of applying the improvement will be:
Мысалы, бізге тізбектеп орындалатын төрт бөлікке бөлінген сериялық тапсырма берілген делік, оның орындалу уақытының үлесі 1=p1 = 0,11, 1=p2 = 0,18, 1=p3 = 0,23 және 1=p4 = 0,48 тең. Онда бірінші бөлім жылдамдатылмайды, яғни 1=s1 = 1, екінші бөлім 5 есе жылдамдатылады, яғни 1=s2 = 5, үшінші бөлім 20 есе жылдамдатылады, яғни 1=s3 = 20, ал төртінші бөлім 1,6 есе жылдамдатылады, яғни 1=s4 = 1,6. Амдал заңы бойынша, жалпы жылдамдық:
For example, assume that we are given a serial task which is split into four consecutive parts, whose percentages of execution time are 1=p1 = 0.11, 1=p2 = 0.18, 1=p3 = 0.23, and 1=p4 = 0.48 respectively. Then we are told that the 1st part is not sped up, so 1=s1 = 1, while the 2nd part is sped up 5 times, so 1=s2 = 5, the 3rd part is sped up 20 times, so 1=s3 = 20, and the 4th part is sped up 1.6 times, so 1=s4 = 1.6. By using Amdahl's law, the overall speedup is
Көріп отырғанымыздай, екінші және үшінші бөлімдердің 5 есе және 20 есе жылдамдатылуы төртінші бөлімнің (орындалу уақытының 48%) 1,6 есе ғана жылдамдатылуына байланысты жалпы жылдамдыққа көп әсер етпейді.
Notice how the 5 times and 20 times speedup on the 2nd and 3rd parts respectively don't have much effect on the overall speedup when the 4th part (48% of the execution time) is accelerated by only 1.6 times.
Кеме пайдасының азаюына байланысты
Амдал заңы көбінесе кемулі табыстың заңымен шатастырылады, бірақ Амдал заңының қолданылуының тек ерекше жағдайы ғана кемулі табыстың заңын көрсетеді. Егер адам не жақсарту керектігін оңтайлы таңдаса (жетілген жылдамдық тұрғысынан), онда жақсарған сайын жақсарудың үдемелі түрде төмендеуін байқайды. Егер оңтайлы емес компонентті жақсартқаннан кейін, одан да оңтайлы компонентті жақсартуға көшсе, керісінше, табыстың артуын көруге болады. Кейбір жақсартулар басқаларына қарағанда қиын немесе көбірек уақыт талап ететіндіктен, жүйелерді осы мағынада "оңтайлы емес" ретпен жақсартудың рационалды екеніне назар аудару керек. Егер машинаға процессорлар қосып, барлық қол жетімді процессорлардың қуатын толық пайдаланатын белгілі бір көлемдегі есептеуді орындаса, Амдал заңы кемулі табыстың заңын көрсетеді. Жүйеге қосылатын әрбір жаңа процессордың пайдалы қуаты алдыңғы процессордан азайады. Процессорлар санын екі есе көбейткен сайын жылдамдық коэффициенті төмендейді, себебі жалпы өнімділік 1/(1 − p) лимитіне жақындайды. Бұл талдауда жад еністігі және I/O еністігі сияқты басқа да мүмкін шектеулер ескерілмейді. Егер бұл ресурстар процессорлар санына пропорционалды түрде ұлғаймаса, процессорларды қосу арқылы тіпті аз пайда алуға болады. Амдал заңының маңызды салдары – нақты қолданбаларды, яғни реттік және параллель бөліктері бар қолданбаларды жылдамдату үшін гетерогенді есептеу техникаларын қолдану қажеттігі. Гетерогенділіктің жалпыланған түріне негізделген, «нормальды формадағы гетерогенділік» деп аталатын, жаңа жылдамдық және энергия тұтыну модельдері бар, олар кең ауқымды гетерогенді көп ядролы архитектураларды қолдайды. Бұл модельдеу әдістері жүйенің қуат тиімділігі мен өнімділік диапазондарын болжауға және аппараттық және жүйелік бағдарламалық жасақтама деңгейіндегі зерттеулер мен әзірлемелерді жеңілдетуге бағытталған.
Amdahl's law is often conflated with the law of diminishing returns, whereas only a special case of applying Amdahl's law demonstrates law of diminishing returns. If one picks optimally (in terms of the achieved speedup) what is to be improved, then one will see monotonically decreasing improvements as one improves. If, however, one picks non optimally, after improving a sub optimal component and moving on to improve a more optimal component, one can see an increase in the return. Note that it is often rational to improve a system in an order that is "non optimal" in this sense, given that some improvements are more difficult or require larger development time than others. Amdahl's law does represent the law of diminishing returns if one is considering what sort of return one gets by adding more processors to a machine, if one is running a fixed size computation that will use all available processors to their capacity. Each new processor added to the system will add less usable power than the previous one. Each time one doubles the number of processors the speedup ratio will diminish, as the total throughput heads toward the limit of 1/(1 − p). This analysis neglects other potential bottlenecks such as memory bandwidth and I/O bandwidth. If these resources do not scale with the number of processors, then merely adding processors provides even lower returns. An implication of Amdahl's law is that to speed up real applications which have both serial and parallel portions, heterogeneous computing techniques are required. There are novel speedup and energy consumption models based on a more general representation of heterogeneity, referred to as the normal form heterogeneity, that support a wide range of heterogeneous many core architectures. These modelling methods aim to predict system power efficiency and performance ranges, and facilitates research and development at the hardware and system software levels.