{"id":282530,"date":"2016-12-15T10:20:05","date_gmt":"2016-12-15T07:20:05","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=282530"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=282530","title":{"rendered":"\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u043d\u0430 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445"},"content":{"rendered":"<p><em>&quot;\u041e\u0431\u044b\u0447\u043d\u043e \u0445\u0430\u043a\u0435\u0440 \u043f\u0438\u0448\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0435 \u0440\u0430\u0434\u0438 \u0432\u044b\u0433\u043e\u0434\u044b,<br \/>  \u0430 \u0440\u0430\u0434\u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0434\u043e\u0432\u043e\u043b\u044c\u0441\u0442\u0432\u0438\u044f. \u0422\u0430\u043a\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430<br \/>  \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439, \u0430 \u043c\u043e\u0436\u0435\u0442 \u043e\u0441\u0442\u0430\u0442\u044c\u0441\u044f<br \/>  \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u0438\u0433\u0440\u043e\u0439 \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0430.&quot;<br \/>  \u0413\u0435\u043d\u0440\u0438 \u0421. \u0423\u043e\u0440\u0440\u0435\u043d. \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0440\u044e\u043a\u0438 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432 [1]<\/em><\/p>\n<p>  <\/p>\n<p>\u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u043c \u043d\u0430\u0448\u0438 \u0437\u0430\u043c\u0435\u0442\u043a\u0438 \u043e\u0431 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435. \u041f\u0435\u0440\u0432\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e, \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u0443\u044e \u0437\u0430\u043f\u0443\u0441\u043a\u0443 \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u0441\u043f\u043e\u0440\u0442\u0430, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"https:\/\/habrahabr.ru\/company\/smartengines\/blog\/304750\/\">\u0442\u0443\u0442<\/a>.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/b40\/23f\/af1\/b4023faf1bdc4e849f5b75c468e44e20.jpg\" alt=\"image\"\/><\/p>\n<p>  <\/p>\n<p>\u041e\u0434\u043d\u0430\u0436\u0434\u044b \u043c\u044b \u0441 \u043a\u043e\u043b\u043b\u0435\u0433\u0430\u043c\u0438 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043b\u0438\u0441\u044c, \u043a\u0430\u043a \u0441\u0430\u043c\u044b\u0435 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435.<\/p>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<p>\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u0438\u043c\u0435\u0435\u0442 VLIW (Very Long Instruction Word) \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 \u2014 \u0442\u043e \u0435\u0441\u0442\u044c \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u201c\u0448\u0438\u0440\u043e\u043a\u0438\u043c\u0438\u201d \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 lcc \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u0440\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0448\u0438\u0440\u043e\u043a\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u044b\u0435 \u0441\u043b\u043e\u0432\u0430. \u0412 \u043e\u0434\u043d\u043e\u043c \u0442\u0430\u043a\u043e\u043c \u0441\u043b\u043e\u0432\u0435 \u043c\u043e\u0436\u043d\u043e \u0443\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0434\u043e 23 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e. \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c SIMD (Single Instruction Multiple Data), \u0442\u043e \u044d\u0442\u043e \u0447\u0438\u0441\u043b\u043e \u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0438 \u0434\u043e 33 \u0438 \u0431\u043e\u043b\u0435\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439. \u041a\u043e\u043c\u0430\u043d\u0434\u044b \u0432 \u0448\u0438\u0440\u043e\u043a\u043e\u043c \u0441\u043b\u043e\u0432\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0432\u0441\u0435\u0445 6 \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u043a\u043e-\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0435. \u0420\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0432\u0430\u043d\u0438\u0435 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0432\u0441\u0435\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u0435\u0439 \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043b\u043e\u0436\u0438\u0442\u0441\u044f \u043d\u0430 \u043f\u043b\u0435\u0447\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430, \u0447\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u0443 \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0438 \u0441\u043d\u0438\u0437\u0438\u0442\u044c \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0434\u043e 45 \u0412\u0442 \u0434\u043b\u044f \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421 [2, 3].<\/p>\n<p>  <\/p>\n<p>\u041c\u044b \u0432 Smart Engines \u0437\u0430\u0434\u0430\u043b\u0438\u0441\u044c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c, \u043a\u0430\u043a \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432\u0441\u0435 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0446\u0438\u043a\u043b\u043e\u0432, \u043d\u0430 \u0441\u0442\u043e\u043b\u044c \u043d\u0435\u043f\u0440\u0438\u0432\u044b\u0447\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 \u0441 \u201c\u0443\u043c\u043d\u044b\u043c\u201d \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c.<\/p>\n<p>  <\/p>\n<p>\u041c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043d\u0430 \u0421++ \u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421 \u0438 Intel Core i7-6700K. \u041d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 lcc \u0432\u0435\u0440\u0441\u0438\u0438 1.20.17, \u0434\u043b\u044f Core i7 \u2014 Microsoft Visual Studio Community 2015. \u0414\u043b\u044f lcc \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0444\u043b\u0430\u0433\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 -O3 \u0438 -ffast-math.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430, \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043c \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421 \u0438 Intel Core i7-6700K:<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>Intel Core i7-6700K<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430<\/td>\n<td>\u042d\u043b\u044c\u0431\u0440\u0443\u0441<\/td>\n<td>Skylake-S<\/td>\n<\/tr>\n<tr>\n<td>\u0427\u0430\u0441\u0442\u043e\u0442\u0430, GHz<\/td>\n<td>0.8<\/td>\n<td>4<\/td>\n<\/tr>\n<tr>\n<td>\u0427\u0438\u0441\u043b\u043e \u044f\u0434\u0435\u0440<\/td>\n<td>4<\/td>\n<td>4 (8 c Hyper-Threading)<\/td>\n<\/tr>\n<tr>\n<td>\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441<\/td>\n<td>65 nm<\/td>\n<td>14 nm<\/td>\n<\/tr>\n<tr>\n<td>Cache L1 size, data<\/td>\n<td>64 Kb<\/td>\n<td>32 Kb<\/td>\n<\/tr>\n<tr>\n<td>Cache L1 size, instructions<\/td>\n<td>128 Kb<\/td>\n<td>32 Kb<\/td>\n<\/tr>\n<tr>\n<td>Cache L2 size<\/td>\n<td>8 Mb<\/td>\n<td>1 Mb<\/td>\n<\/tr>\n<tr>\n<td>Cache L3 size<\/td>\n<td>&#8212;<\/td>\n<td>8 Mb<\/td>\n<\/tr>\n<tr>\n<td>\u0422\u0438\u043f \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438<\/td>\n<td>DDR3-1600<\/td>\n<td>DDR4-2133<\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u0430\u044f \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044c, \u0412\u0442<\/td>\n<td>45<\/td>\n<td>91<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u0422\u0430\u043a\u0442\u043e\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u044d\u0442\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f: 800 \u041c\u0413\u0446 \u0443 \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421 \u0438 4 \u0413\u0413\u0446 \u0443 Intel Core i7. \u0422\u0430\u043a\u0436\u0435 \u0437\u0430\u043c\u0435\u0442\u0438\u043c, \u0447\u0442\u043e \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u0438\u043c\u0435\u0435\u0442 \u0434\u0440\u0443\u0433\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043a\u044d\u0448-\u043f\u0430\u043c\u044f\u0442\u0438: \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 L3 \u043a\u044d\u0448, \u043e\u0434\u043d\u0430\u043a\u043e \u0440\u0430\u0437\u043c\u0435\u0440 L2 \u043a\u044d\u0448\u0430 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 8 Mb (\u043f\u043e 2 Mb \u043d\u0430 \u044f\u0434\u0440\u043e), \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u0443 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043d\u043e\u0433\u043e Core\u00ad i7 1 Mb (\u043f\u043e 0.25 Mb \u043d\u0430 \u044f\u0434\u0440\u043e). L1 \u043a\u044d\u0448 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u0442\u0430\u043a\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u0435, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043a\u044d\u0448 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 (128 Kb \u043f\u0440\u043e\u0442\u0438\u0432 32 Kb).<\/p>\n<p>  <\/p>\n<p><strong>\u041f\u0440\u0438\u043c\u0435\u0440 1. \u0420\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0446\u0438\u043a\u043b\u043e\u0432<\/strong><\/p>\n<p>  <\/p>\n<p>\u042d\u0442\u0430 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043d\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0439 \u0446\u0438\u043a\u043b\u0430 (\u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u0438 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u043a \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0432\u044b\u0445\u043e\u0434\u0430 \u0438\u0437 \u0446\u0438\u043a\u043b\u0430) \u043f\u0443\u0442\u0435\u043c \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f \u0442\u0435\u043b\u0430 \u0446\u0438\u043a\u043b\u0430. \u0422\u0430\u043a\u0430\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0445\u043e\u0440\u043e\u0448\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0446\u0438\u043a\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435.<\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">#define N 64000 unsigned int x = 0; unsigned int a[N]; for (int i = 0; i &lt; N; ++i)   a[i] = i; \/\/\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u0446\u0438\u043a\u043b for (int k = 0; k &lt; N;) {   x += a[k];   a[k++] = k; }<\/code><\/pre>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0446\u0438\u043a\u043b \u043c\u044b \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b\u0438 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0437\u0430\u043c\u0435\u0440\u043e\u0432 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 1. \u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f 32-\u0431\u0438\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0430\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u0438 (\u0444\u043b\u0430\u0433 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 -mptr32). \u041c\u044b \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043b\u0438 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430 1 \u0413\u0413\u0446 \u043f\u0443\u0442\u0435\u043c \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u0442\u0430\u043a\u0442\u043e\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u0432 \u0413\u0413\u0446. \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0430\u044f \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0431\u0435\u0437\u0440\u0430\u0437\u043c\u0435\u0440\u043d\u0430\u044f \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u0438 Core i7 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f \u0432 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u0435. <\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 1. \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 N \u2014 \u0447\u0438\u0441\u043b\u0430 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044b\u0445 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0439.<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>Intel Core i7<\/th>\n<th>Intel Core i7<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>N<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>400<\/td>\n<td>320<\/td>\n<td>255<\/td>\n<td>1020<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>200<\/td>\n<td>160<\/td>\n<td>116<\/td>\n<td>464<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>100<\/td>\n<td>80<\/td>\n<td>54<\/td>\n<td>216<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>50<\/td>\n<td>40<\/td>\n<td>25<\/td>\n<td>100<\/td>\n<\/tr>\n<tr>\n<td>16<\/td>\n<td>26<\/td>\n<td>21<\/td>\n<td>20<\/td>\n<td>80<\/td>\n<\/tr>\n<tr>\n<td>32<\/td>\n<td>15<\/td>\n<td>12<\/td>\n<td>7<\/td>\n<td>28<\/td>\n<\/tr>\n<tr>\n<td>64<\/td>\n<td>8<\/td>\n<td>6<\/td>\n<td>5<\/td>\n<td>20<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0446\u0438\u043a\u043b\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c Core i7, \u0442\u0430\u043a \u0438 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0446\u0438\u043a\u043b\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438, \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0435\u0435 Core i7 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e\u0442.<\/p>\n<p>  <\/p>\n<p><strong>\u041f\u0440\u0438\u043c\u0435\u0440 2. \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b<\/strong><\/p>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432 \u043f\u043e 1, 4 \u0438\u043b\u0438 8 \u0431\u0430\u0439\u0442\u0430\u043c. \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 <code>\u0430<\/code> \u0431\u044b\u043b \u0432\u044b\u0440\u043e\u0432\u043d\u0435\u043d \u043d\u0430 8 \u0431\u0430\u0439\u0442.<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">#define MASK1  0xF1 #define MASK4 0xF1F2F3F4 #define MASK8 0xF1F2F3F4F5F6F7F8  for (k = 0; k &lt; n; ++k) {   \u0430[k] &amp;= MASK1; }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0437\u0430\u043c\u0435\u0440\u043e\u0432 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 2.<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 2. \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 N \u2014 \u0447\u0438\u0441\u043b\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442.<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>Intel Core i7<\/th>\n<th>Intel Core i7<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>N<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>2400<\/td>\n<td>1920<\/td>\n<td>811<\/td>\n<td>3244<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>600<\/td>\n<td>480<\/td>\n<td>201<\/td>\n<td>804<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>300<\/td>\n<td>240<\/td>\n<td>102<\/td>\n<td>408<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043f\u043e 4 \u0438 8 \u0431\u0430\u0439\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u043a\u0430\u043a \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c Core i7, \u0442\u0430\u043a \u0438 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421, \u043f\u0440\u0438\u0447\u0435\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u044e\u0442\u0441\u044f \u043a\u0440\u0430\u0442\u043d\u043e \u0447\u0438\u0441\u043b\u0443 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0435\u0435 Core i7 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e\u0442. <\/p>\n<p>  <\/p>\n<p><strong>\u041f\u0440\u0438\u043c\u0435\u0440 3. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 SIMD<\/strong><\/p>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u0440\u0435\u0448\u0438\u043b\u0438 \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0442\u0440\u0438\u043d\u0441\u0438\u043a\u0438 \u0438 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u0435\u043b \u0442\u0438\u043f\u0430 <code>float<\/code> \u043f\u0440\u0438 <code>n = 12800<\/code>.<br \/>  \u041d\u0435\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0446\u0438\u043a\u043b:<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">float result = 0.0; for (int i = 0; i &lt; n; ++i) {   result += x[i] * y[i]; }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0421 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c SSE:<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">float *pX = x; float *pY = y; __m128 Sum = _mm_setzero_ps(); int num = n \/ 4; for (int i = 0; i &lt; num; ++i, pX += 4, pY += 4) {   Sum = _mm_add_ps(Sum, _mm_mul_ps(_mm_load_ps(pX), _mm_load_ps(pY))); } float result = _mm_extract_ps(Sum, 0) + _mm_extract_ps(Sum, 1) + _mm_extract_ps(Sum, 2) + _mm_extract_ps(Sum, 3);<\/code><\/pre>\n<p>  <\/p>\n<p>\u0421 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c EML [4] (\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u043f\u043e\u0434 \u042d\u043b\u044c\u0431\u0440\u0443\u0441):<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">double result; eml_Vector_DotProd_32F(x, y, n, &amp;result);<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0437\u0430\u043c\u0435\u0440\u043e\u0432 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 3. \u0420\u0430\u0437\u043c\u0435\u0440 SIMD-\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 64 \u0431\u0438\u0442\u0430 (instruction set \u0432\u0435\u0440\u0441\u0438\u0438 3), \u0447\u0442\u043e \u0432 \u043e\u0431\u0449\u0435\u043c-\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u043c\u0443 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044e \u0432 2 \u0440\u0430\u0437\u0430 \u043c\u0435\u0436\u0434\u0443 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0431\u0435\u0437 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0439 \u0438 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0441 SIMD. \u041d\u0430 Core i7 \u0432\u0441\u0435 \u0442\u043e\u0436\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u0430\u0432\u0434\u043e\u043f\u043e\u0434\u043e\u0431\u043d\u043e, \u043c\u044b \u043e\u043f\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438 128-\u0431\u0438\u0442\u043d\u044b\u043c\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f 4 \u0447\u0438\u0441\u043b\u0430 \u0442\u0438\u043f\u0430 float. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0437\u0430\u043c\u0435\u0442\u043d\u043e, \u0447\u0442\u043e \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u0431\u0435\u0437 \u0438\u043d\u0442\u0440\u0438\u043d\u0441\u0438\u043a\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0435\u0435 Core i7 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0447\u0430\u0441\u0442\u043e\u0442\u044b, \u0430 \u0432\u043e\u0442 \u0441 \u0438\u043d\u0442\u0440\u0438\u043d\u0441\u0438\u043a\u0430\u043c\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442. <\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 3. \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e\u0434\u0441\u0447\u0435\u0442\u0430 \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f.<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>Intel Core i7<\/th>\n<th>Intel Core i7<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<\/tr>\n<tr>\n<td>\u0411\u0435\u0437 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438<\/td>\n<td>263<\/td>\n<td>210<\/td>\n<td>99<\/td>\n<td>396<\/td>\n<\/tr>\n<tr>\n<td>\u0421 SIMD<\/td>\n<td>110<\/td>\n<td>88<\/td>\n<td>24<\/td>\n<td>96<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p><strong>\u041f\u0440\u0438\u043c\u0435\u0440 4. \u041f\u043e\u0434\u0441\u0447\u0435\u0442 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0425\u044d\u043c\u043c\u0438\u043d\u0433\u0430 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0443\u043c\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438<\/strong><\/p>\n<p>  <\/p>\n<p>\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u043b\u0438 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0425\u044d\u043c\u043c\u0438\u043d\u0433\u0430 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0434\u0432\u0443\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432, \u0442.\u0435. \u0432\u0437\u044f\u043b\u0438 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0425\u044d\u043c\u043c\u0438\u043d\u0433\u0430 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043c\u0438 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0447\u0438\u0441\u0435\u043b \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u0445 \u0438 \u043d\u0430\u0448\u043b\u0438 \u0438\u0445 \u0441\u0443\u043c\u043c\u0443. \u0414\u043b\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0441 8-\u0431\u0438\u0442\u043d\u044b\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u043f\u043e\u0431\u0438\u0442\u043e\u0432\u043e\u0435 \u0418\u0421\u041a\u041b\u042e\u0427\u0410\u042e\u0429\u0415\u0415 \u0418\u041b\u0418 \u0438 \u043f\u0440\u0435\u0434\u043f\u043e\u0434\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0439:<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">int result = 0; for (int i = 0; i &lt; n; ++i) {   result += popcnt_table[x[i] ^ y[i]]; }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0414\u043b\u044f 32- \u0438 64-\u0431\u0438\u0442\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u043f\u043e\u0431\u0438\u0442\u043e\u0432\u043e\u0435 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0418\u0421\u041a\u041b\u042e\u0427\u0410\u042e\u0429\u0415\u0415 \u0418\u041b\u0418 \u0438 \u0438\u043d\u0442\u0440\u0438\u043d\u0441\u0438\u043a\u0438 <code>_mm_popcnt_u32, _mm_popcnt_u64<\/code> \u043d\u0430 Intel \u0438 \u0438\u043d\u0442\u0440\u0438\u043d\u0441\u0438\u043a\u0438 <code>__builtin_e2k_popcnts, __builtin_e2k_popcntd<\/code> \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435. \u041e\u0431\u0449\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 x \u0438 y \u0432 \u0431\u0430\u0439\u0442\u0430\u0445 \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u0430\u0441\u044c \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u043d\u043e\u0439 \u0438 \u0440\u0430\u0432\u043d\u043e\u0439 n = 512. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0437\u0430\u043c\u0435\u0440\u043e\u0432 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 4.<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 4. \u0412\u0440\u0435\u043c\u044f \u043f\u043e\u0434\u0441\u0447\u0435\u0442\u0430 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0425\u044d\u043c\u043c\u0438\u043d\u0433\u0430 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0447\u0438\u0441\u043b\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 N.<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>Intel Core i7<\/th>\n<th>Intel Core i7<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>N<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>630<\/td>\n<td>504<\/td>\n<td>155<\/td>\n<td>620<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>110<\/td>\n<td>88<\/td>\n<td>47<\/td>\n<td>188<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>76<\/td>\n<td>61<\/td>\n<td>15<\/td>\n<td>60<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0438\u043d\u0442\u0440\u0438\u043d\u0441\u0438\u043a\u0438 \u0434\u043b\u044f \u043f\u043e\u0434\u0441\u0447\u0435\u0442\u0430 \u0447\u0438\u0441\u043b\u0430 \u0435\u0434\u0438\u043d\u0438\u0446 \u0432 64-\u0431\u0438\u0442\u043d\u043e\u043c \u0438 32-\u0431\u0438\u0442\u043d\u043e\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0445 \u0438 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435, \u0438 \u043d\u0430 Core i7 \u0434\u0430\u044e\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u0435\u0440\u0441\u0438\u0438 \u0441 \u043f\u0440\u0435\u0434\u043f\u043e\u0434\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, 32-\u0431\u0438\u0442\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 popcnt \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0447\u0435\u043c \u043d\u0430 Core i7 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e\u0442. \u0410 \u0432\u043e\u0442 \u0432 64-\u0431\u0438\u0442\u043d\u043e\u0439 \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430 Core i7 \u0438 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u0441\u0440\u0430\u0432\u043d\u044f\u043b\u0438\u0441\u044c.<\/p>\n<p>  <\/p>\n<p><strong>\u041f\u0440\u0438\u043c\u0435\u0440 5. \u0423\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c<\/strong><\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e\u0437\u0430\u0438\u043c\u0441\u0442\u0432\u043e\u0432\u0430\u043d \u0438\u0437 \u043a\u043d\u0438\u0433\u0438 \u041a\u0440\u0438\u0441\u0430 \u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u0438 \u201c\u0422\u0435\u0445\u043d\u0438\u043a\u0430 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c. \u042d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438\u201d [5]. \u041e\u043d \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442, \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u043f\u043e\u0432\u044b\u0441\u0438\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c. \u041c\u0430\u0441\u0441\u0438\u0432 <code>a<\/code> \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d \u043d\u0443\u043b\u044f\u043c\u0438, <code>n = 2097152<\/code>.<br \/>  \u041f\u0440\u0438\u043c\u0435\u0440 \u0441 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c:<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">int x = 0; for (size_t a = 0; a &lt; BLOCK_SIZE; a += 8 * sizeof(int)) {         x = *(int *)((char *)p1 + a + 0 * sizeof(int));         a += x;         x = *(int *)((char *)p1 + a + 1 * sizeof(int));         a += x;         x = *(int *)((char *)p1 + a + 2 * sizeof(int));         a += x;         x = *(int *)((char *)p1 + a + 3 * sizeof(int));         a += x;         x = *(int *)((char *)p1 + a + 4 * sizeof(int));         a += x;         x = *(int *)((char *)p1 + a + 5 * sizeof(int));         a += x;         x = *(int *)((char *)p1 + a + 6 * sizeof(int));         a += x;         x = *(int *)((char *)p1 + a + 7 * sizeof(int));         a += x; }<\/code><\/pre>\n<p>  <\/p>\n<p>\u041a\u0430\u0436\u0434\u044b\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0438\u0437 \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438.<br \/>  \u0422\u0435\u043f\u0435\u0440\u044c \u043a\u043e\u0434 \u0431\u0435\u0437 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438:<\/p>\n<p>  <\/p>\n<pre><code class=\"cpp\">int x = 0; for (size_t a = 0; a &lt; BLOCK_SIZE; a += 8 * sizeof(int)) {         x += *(int *)((char *)p2 + a + 0 * sizeof(int));         x += *(int *)((char *)p2 + a + 1 * sizeof(int));         x += *(int *)((char *)p2 + a + 2 * sizeof(int));         x += *(int *)((char *)p2 + a + 3 * sizeof(int));         x += *(int *)((char *)p2 + a + 4 * sizeof(int));         x += *(int *)((char *)p2 + a + 5 * sizeof(int));         x += *(int *)((char *)p2 + a + 6 * sizeof(int));         x += *(int *)((char *)p2 + a + 7 * sizeof(int)); }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0437\u0430\u043c\u0435\u0440\u043e\u0432 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 5. \u0423\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435, \u0442\u0430\u043a \u0438 \u043d\u0430 Core i7, \u043f\u0440\u0438\u0447\u0435\u043c \u043d\u0430 Core i7 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0432 11 \u0440\u0430\u0437, \u0430 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u2014 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432 20! \u041a\u043e\u0434 \u0441 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u0435\u0435, \u0447\u0435\u043c \u043d\u0430 Core i7 \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446, \u0430 \u0432\u043e\u0442 \u0431\u0435\u0437 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u0432\u0441\u0435\u0433\u043e \u0432 4 \u0440\u0430\u0437\u0430 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u0435\u0435 Core i7 (\u043f\u0440\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0438 \u0447\u0430\u0441\u0442\u043e\u0442 \u0432 5 \u0440\u0430\u0437). \u0422\u0430\u043a\u0438\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u043d\u0430\u043b\u0438\u0447\u0438\u0435\u043c \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0434\u043a\u0430\u0447\u043a\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 (array prefetch buffer), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e, \u0435\u0441\u043b\u0438 \u043f\u043e\u0434\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0440\u0430\u0441\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e.<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 5. \u0412\u0440\u0435\u043c\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u0438 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>Intel Core i7<\/th>\n<th>Intel Core i7<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f, \u043c\u0441<\/td>\n<td>\u0412\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 1 \u0413\u0413\u0446<\/td>\n<\/tr>\n<tr>\n<td>\u0417\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/td>\n<td>605<\/td>\n<td>484<\/td>\n<td>87<\/td>\n<td>348<\/td>\n<\/tr>\n<tr>\n<td>\u041d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/td>\n<td>32<\/td>\n<td>26<\/td>\n<td>8<\/td>\n<td>32<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p><strong>\u041f\u0440\u0438\u043c\u0435\u0440 6. \u041c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u044b\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f<\/strong><\/p>\n<p>  <\/p>\n<p>\u0420\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f, \u043c\u044b \u043d\u0435 \u043c\u043e\u0433\u043b\u0438 \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u043c\u0435\u0442\u043e\u0434 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438, \u043a\u0430\u043a \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0432\u0430\u043d\u0438\u0435. \u0414\u043b\u044f \u0447\u0438\u0441\u0442\u043e\u0442\u044b \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u043c\u044b \u0432\u0437\u044f\u043b\u0438 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 (\u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0442\u0438\u043f\u0430 double). \u0412 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 6 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b N \u0437\u0430\u0434\u0430\u0447 (T<sup>\u043f\u043e\u0441\u043b<\/sup>), \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b N \u0437\u0430\u0434\u0430\u0447 \u0432 N \u043f\u043e\u0442\u043e\u043a\u043e\u0432 (T<sup>\u043f\u0430\u0440<\/sup>) \u0438 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435 E:<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 6. \u0412\u0440\u0435\u043c\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0438 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0447\u0438\u0441\u043b\u0430 \u0437\u0430\u0434\u0430\u0447 \u0438 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 N.<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>\u042d\u043b\u044c\u0431\u0440\u0443\u0441-4\u0421<\/th>\n<th>Intel Core i7<\/th>\n<th>Intel Core i7<\/th>\n<th>Intel Core i7<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>N<\/td>\n<td>T<sup>\u043f\u043e\u0441\u043b<\/sup>, \u043c\u0441<\/td>\n<td>T<sup>\u043f\u0430\u0440<\/sup>, \u043c\u0441<\/td>\n<td>E=T<sup>\u043f\u043e\u0441\u043b<\/sup>\/T<sup>\u043f\u0430\u0440<\/sup><\/td>\n<td>T<sup>\u043f\u043e\u0441\u043b<\/sup>, \u043c\u0441<\/td>\n<td>T<sup>\u043f\u0430\u0440<\/sup>, \u043c\u0441<\/td>\n<td>E=T<sup>\u043f\u043e\u0441\u043b<\/sup>\/T<sup>\u043f\u0430\u0440<\/sup><\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>2628<\/td>\n<td>1316<\/td>\n<td>2.00<\/td>\n<td>1033<\/td>\n<td>500<\/td>\n<td>2.07<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>5259<\/td>\n<td>1318<\/td>\n<td>3.99<\/td>\n<td>1994<\/td>\n<td>500<\/td>\n<td>3.99<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>10513<\/td>\n<td>2634<\/td>\n<td>3.99<\/td>\n<td>3987<\/td>\n<td>503<\/td>\n<td>7.93<\/td>\n<\/tr>\n<tr>\n<td>16<\/td>\n<td>21045<\/td>\n<td>5268<\/td>\n<td>4.00<\/td>\n<td>7980<\/td>\n<td>1009<\/td>\n<td>7.91<\/td>\n<\/tr>\n<tr>\n<td>20<\/td>\n<td>26321<\/td>\n<td>6583<\/td>\n<td>4.00<\/td>\n<td>9967<\/td>\n<td>1263<\/td>\n<td>7.89<\/td>\n<\/tr>\n<tr>\n<td>32<\/td>\n<td>42053<\/td>\n<td>10535<\/td>\n<td>3.99<\/td>\n<td>15948<\/td>\n<td>2014<\/td>\n<td>7.92<\/td>\n<\/tr>\n<tr>\n<td>40<\/td>\n<td>52566<\/td>\n<td>13170<\/td>\n<td>3.99<\/td>\n<td>19936<\/td>\n<td>2528<\/td>\n<td>7.89<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043d\u0430 Core i7 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432 8 \u0440\u0430\u0437 \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u043d\u0430 8 \u043f\u043e\u0442\u043e\u043a\u0430\u0445 \u0438 \u0434\u0430\u043b\u044c\u0448\u0435 \u0432\u0430\u0440\u044c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043d\u0435\u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e. \u041d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435 \u0432 4 \u0440\u0430\u0437\u0430 \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u043d\u0430 4 \u043f\u043e\u0442\u043e\u043a\u0430\u0445 \u0438 \u0442\u0430\u043a\u0436\u0435 \u0441 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0447\u0438\u0441\u043b\u0430 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f. \u0421\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u0438 Core i7 \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0440\u0430\u0432\u043d\u044b\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 2.6, \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0447\u0430\u0441\u0442\u043e\u0442 \u0440\u0430\u0432\u043d\u043e 5. <\/p>\n<p>  <\/p>\n<p><strong>\u0412\u044b\u0432\u043e\u0434\u044b<\/strong><\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435 \u0438 \u0432 \u044d\u0442\u043e\u043c \u043f\u043b\u0430\u043d\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u043d\u0430\u043d\u0438\u0439 \u0438 \u0443\u043c\u0435\u043d\u0438\u0439. \u0412 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0440\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445 \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0434\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441 \u043f\u043e\u043a\u0430\u0437\u0430\u043b \u0441\u0435\u0431\u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0432 800 \u041c\u0413\u0446 \u0438 \u0432 \u0434\u0432\u0430 \u0440\u0430\u0437\u0430 \u043c\u0435\u043d\u044c\u0448\u0435\u0439 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u043e\u0439 \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 Core i7. <\/p>\n<p>  <\/p>\n<p>P.S. \u0410 \u0435\u0449\u0435 \u043c\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043d\u0430\u0448\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u0441\u043f\u043e\u0440\u0442\u0430 \u043d\u0430 SPARC! \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u044c\u0438 \u043e \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0438 \u043d\u0430 \u0435\u0449\u0435 \u043e\u0434\u043d\u043e\u0439 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435.<\/p>\n<p>  <\/p>\n<h4 id=\"ispolzovannye-istochniki\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438<\/h4>\n<p>  <\/p>\n<p>[1] \u0413\u0435\u043d\u0440\u0438 \u0421. \u0423\u043e\u0440\u0440\u0435\u043d, \u043c\u043b. \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0440\u044e\u043a\u0438 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432. \u041c.: \u0418\u0437\u0434\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0434\u043e\u043c &quot;\u0412\u0438\u043b\u044c\u044f\u043c\u0441&quot;, 2014. ISBN 978-5-8459-1838-3 \u2013 512 \u0421.<br \/>  [2] <a href=\"http:\/\/www.elbrus.ru\/arhitektura_elbrus\">http:\/\/www.elbrus.ru\/arhitektura_elbrus<\/a>.<br \/>  [3] <a href=\"http:\/\/www.mcst.ru\/mikroprocessor-elbrus4s\">http:\/\/www.mcst.ru\/mikroprocessor-elbrus4s<\/a>.<br \/>  [4] <a href=\"http:\/\/www.mcst.ru\/vysokoproizvoditelnye_biblioteki\">http:\/\/www.mcst.ru\/vysokoproizvoditelnye_biblioteki<\/a>.<br \/>  [5] \u041a\u0440\u0438\u0441 \u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u0438. \u201c\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c. \u042d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438\u201d. \u0421\u043f\u0431.: \u0411\u0425\u0412-\u041f\u0435\u0442\u0435\u0440\u0431\u0443\u0440\u0433, 2003. ISBN 5-94157-232-8 \u2013 464 \u0421.<\/p>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habrahabr.ru\/post\/317672\/\"> https:\/\/habrahabr.ru\/post\/317672\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p><em>&quot;\u041e\u0431\u044b\u0447\u043d\u043e \u0445\u0430\u043a\u0435\u0440 \u043f\u0438\u0448\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0435 \u0440\u0430\u0434\u0438 \u0432\u044b\u0433\u043e\u0434\u044b,<br \/>  \u0430 \u0440\u0430\u0434\u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0434\u043e\u0432\u043e\u043b\u044c\u0441\u0442\u0432\u0438\u044f. \u0422\u0430\u043a\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430<br \/>  \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439, \u0430 \u043c\u043e\u0436\u0435\u0442 \u043e\u0441\u0442\u0430\u0442\u044c\u0441\u044f<br \/>  \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u0438\u0433\u0440\u043e\u0439 \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0430.&quot;<br \/>  \u0413\u0435\u043d\u0440\u0438 \u0421. \u0423\u043e\u0440\u0440\u0435\u043d. \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0440\u044e\u043a\u0438 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432 [1]<\/em><\/p>\n<p>  <\/p>\n<p>\u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u043c \u043d\u0430\u0448\u0438 \u0437\u0430\u043c\u0435\u0442\u043a\u0438 \u043e\u0431 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435. \u041f\u0435\u0440\u0432\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e, \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u0443\u044e \u0437\u0430\u043f\u0443\u0441\u043a\u0443 \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u0441\u043f\u043e\u0440\u0442\u0430, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"https:\/\/habrahabr.ru\/company\/smartengines\/blog\/304750\/\">\u0442\u0443\u0442<\/a>.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/b40\/23f\/af1\/b4023faf1bdc4e849f5b75c468e44e20.jpg\" alt=\"image\"\/><\/p>\n<p>  <\/p>\n<p>\u041e\u0434\u043d\u0430\u0436\u0434\u044b \u043c\u044b \u0441 \u043a\u043e\u043b\u043b\u0435\u0433\u0430\u043c\u0438 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043b\u0438\u0441\u044c, \u043a\u0430\u043a \u0441\u0430\u043c\u044b\u0435 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u042d\u043b\u044c\u0431\u0440\u0443\u0441\u0435.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-282530","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/282530","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=282530"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/282530\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=282530"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=282530"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=282530"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}