1. C# / Говнокод #18399

    +145

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    for (int i = 0; i < 4; i++)
                {
                    p[i] = blocks[0][i];
                    p[i + 4] = blocks[1][i];
                    p[i + 8] = blocks[2][i];
                    p[i + 12] = blocks[3][i];
                    p[i + 16] = blocks[4][i];
                    p[i + 20] = blocks[5][i];
                    p[i + 24] = blocks[6][i];
                    p[i + 28] = blocks[7][i];
                }

    и помните - не больше одного цикла за раз...

    Запостил: kegdan, 24 Июня 2015

    Комментарии (9) RSS

    • и помните - не больше одного цикла за раз...
      Ответить
    • Это же loop unrolling, оптимизация.
      Ответить
      • И наверняка посчитано, чтобы всё помещалось в ко-ко-ко-конвейер.
        Ответить
      • loop ass-hole-in
        Ответить
      • царь уже что-то такое наложил на ЛОРе: https://www.linux.org.ru/forum/development/10452829
        Ответить
        • Я два года ждал что-то типа этой публикации!

          Комментарии немного... удивили.
          Ответить
          • >Это мне смешно... Прочитал парочку мануалов, и решил что всех надурил? Категоричность суждений (достойная самого Полграфа Полграфовича) с головой выдает в тебе человека видевшего слишком много побед, и слишком мало факапов. Будь бы тематика из области ФП, я бы с готовностью применил убойную идиому «мамкин борщ», но увы...
            Ответить
          • а я-то думал что компиляторы давно уже умнее обычного программста
            Ответить
    • разворачиваем цыклы
      кто-то мыщъа перечиталсо

      А теперь пожалуйста две версии программы: один под интелловые контроллеры памяти, а другой под AMDшные
      Ответить

    Добавить комментарий