<HTML><BODY>7 лет назад этим Тутубалин развлекался :)<br><br><a href="http://blog.lexa.ru/2007/01/04/o_peremnozhenii_matric_i_prochix_arxitekturnix_zam.html">http://blog.lexa.ru/2007/01/04/o_peremnozhenii_matric_i_prochix_arxitekturnix_zam.html</a><br><a href="http://blog.lexa.ru/2007/01/20/umnozhenie_matric_int_float_i_double.html">http://blog.lexa.ru/2007/01/20/umnozhenie_matric_int_float_i_double.html</a><br><a href="http://blog.lexa.ru/2007/01/27/umnozhenie_matric_serija_2_woodcrest_protiv_optero.html">http://blog.lexa.ru/2007/01/27/umnozhenie_matric_serija_2_woodcrest_protiv_optero.html</a><br><a href="http://blog.lexa.ru/2007/02/22/umnozhenie_matric_serija_4_nvidia_g80_cuda_cublas.html">http://blog.lexa.ru/2007/02/22/umnozhenie_matric_serija_4_nvidia_g80_cuda_cublas.html</a><br><a href="http://blog.lexa.ru/2007/10/16/umnozhenie_matric_serija_5_vichislenija_na_gpu_2.html">http://blog.lexa.ru/2007/10/16/umnozhenie_matric_serija_5_vichislenija_na_gpu_2.html</a><br><br><br>Tue, 09 Sep 2014 10:17:28 +0400 от Dmitry Smal <mialinx@gmail.com>:<br>
<blockquote style="border-left:1px solid #0857A6; margin:10px; padding:0 0 0 10px;">
        <div id="">
        



    









        
        


        
        
        
        
        

        
        

        
        



<div class="js-helper js-readmsg-msg">
        <style type="text/css"></style>
        <div>
                <base target="_self" href="https://e.mail.ru/">
                
                        <div id="style_14102434910000000126_BODY">
  
    
  
  
    <div>Кстати, забавная история про PDL.  <br>
      Как-то нужно было перемножить мне пару матриц.. 100x200 так.<br>
      Решил сравнить PDL  и чистый C (школьный алгоритм) - PDL оказался
      быстре (!) причем не просто быстрее, а принципиально быстрее.<br>
      Школьный алгоритм на C - O(n^3) как и полагается, PDL - O(n^2).  <br>
      Вскрытие показало, что $x * $y  в PDL это не обычное, а
      поэлементное умножение матриц.<br>
      Что в большинстве случаев не то что нужно.  Так что here be
      dragons.<br>
      <br>
      <br>
      BTW, даже стандартный школьный алгоритм можно оптимизировать:<br>
      Следить, что бы последовательно извлекаемые числа находились в
      памяти последовательно - и не выпадали из кеша.<br>
      Для этого второую матрицу нужно будет транспонировать и умножать
      немного по-другому.<br>
      <br>
      On 09/08/2014 09:25 PM, Andrey Kovbovich wrote:<br>
    </div>
    <blockquote cite="mid:CAPTWO-Y0eEugABRM6k8FvhyhCS6QwP77gZQ2ETPtRU=D-vp+bA@mail.gmail.com" type="cite">
      <div dir="ltr">Perl + PDL</div>
      <div><br>
        <div>8 сентября 2014 г., 21:01 пользователь
          Daniel Podolsky <span dir="ltr"><<a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3aonokonem@gmail.com" target="_blank">onokonem@gmail.com</a>></span>
          написал:<br>
          <blockquote style="margin:0 0 0             .8ex;border-left:1px #ccc solid;padding-left:1ex">JVM!<br>
            <br>
            :)<br>
            <div>
              <div><br>
                2014-09-08 20:52 GMT+04:00 Иван Соколов <<a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3avaneska.ru@gmail.com" target="_blank">vaneska.ru@gmail.com</a>>:<br>
                > Go?<br>
                ><br>
                > 8 сентября 2014 г., 20:46 пользователь Daniel
                Podolsky <<a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3aonokonem@gmail.com" target="_blank">onokonem@gmail.com</a>><br>
                > написал:<br>
                ><br>
                >> те, которые с JIT, могут оказаться на некоторых
                задачах быстрее C,<br>
                >> благодаря оптимизатору на стадии исполнения.<br>
                >><br>
                >> 2014-09-08 20:24 GMT+04:00 Андрей Костенко <<a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3aandrey@kostenko.name" target="_blank">andrey@kostenko.name</a>>:<br>
                >> > 1. Все компилируемые<br>
                >> > 2. Все с JIT<br>
                >> ><br>
                >> > W dniu poniedziałek, 8 września 2014
                Михаил Монашёв<br>
                >> > <<a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3apostmaster@softsearch.ru" target="_blank">postmaster@softsearch.ru</a>>
                napisał(a):<br>
                >> ><br>
                >> >> Здравствуйте.<br>
                >> >><br>
                >> >> Скажите,   пожалуйста,   какие 
                 языки   програмиирования  на  простых<br>
                >> >> арифметических  операциях  и 
                операциях  с доступом к данным, например<br>
                >> >> перемножение матриц или сортировке,
                дают скорости близкие к сишным?<br>
                >> >><br>
                >> >> --<br>
                >> >> С уважением,<br>
                >> >>  Михаил                         
                mailto:<a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3apostmaster@softsearch.ru" target="_blank">postmaster@softsearch.ru</a><br>
                >> >><br>
                >> >> --<br>
                >> >> Moscow.pm mailing list<br>
                >> >> <a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3amoscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a> |
                <a moz-do-not-send="true" href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
                >> ><br>
                >> ><br>
                >> > --<br>
                >> > Moscow.pm mailing list<br>
                >> > <a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3amoscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a> |
                <a moz-do-not-send="true" href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
                >> ><br>
                >> --<br>
                >> Moscow.pm mailing list<br>
                >> <a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3amoscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a> |
                <a moz-do-not-send="true" href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
                ><br>
                ><br>
                ><br>
                ><br>
                > --<br>
                > С уважением,<br>
                > Иван<br>
                ><br>
                > --<br>
                > Moscow.pm mailing list<br>
                > <a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3amoscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a> |
                <a moz-do-not-send="true" href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
                ><br>
                --<br>
                Moscow.pm mailing list<br>
                <a moz-do-not-send="true" href="//e.mail.ru/compose/?mailto=mailto%3amoscow%2dpm@pm.org" target="_blank">moscow-pm@pm.org</a>
                | <a moz-do-not-send="true" href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
    </blockquote>
    <br>
  


</div>
                        <div>-- <br>
Moscow.pm mailing list<br>
<a href="/compose?To=moscow%2dpm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br>
</div>
                
                <base target="_self" href="https://e.mail.ru/">
        </div>

        
</div>


</div>
</blockquote>
<br></BODY></HTML>