Лого Сделано у нас
43

СуН на «Эльбрусе» :)

читать полностью

  • 1
    Сергей Барановский
    14.12.1515:51:48

    но это настолько неинтересно, что мы даже не пробовали: если есть свой линукс и своя архитектура, то именно на ней и надо в итоге запуститься.

    Круто, дай Бог чтобы у вас все получилось!

    Эмуляция там работает независимо от основной операционки как таковой -- на материнской плате есть небольшая CF-ка с транслятором (и, видимо, чем-то вроде гипервизора). О ней лучше почитать здесь или в этой статье (PDF)

    Спасибо, прочитал, правда все равно до конца не понял. Речь в статье идет о разных видах компиляторов, которые как я понял на ходу перекодируют x86-инструкции в Эльбрусовские. Соотв, одни это делают быстро, результирующий код будет медленный, другие медленно — но код лучше получается. Просто я подумал, а нельзя было бы сделать так — при установке новой программы х86 сразу сделать максимально хорошую перекомпиляцию в Эль-коды, пусть это займет там 10-15 минут, но зато потом уже программа будет сразу и быстро работать? Или так и делается? И еще я не совсем понял — получается что можно одноврменно запускать и программы для Эльбруса и для х86 в соседнем окне?

    • 0
      shigorin shigorin
      15.12.1500:02:28

      Про трансляцию знаю мало -- эт лучше выбираться на OS Day, если увидите очередной анонс, и расспрашивать людей живьём.

      Не удивлюсь, если технически возможность организовать запуск в соседних окошках есть (см. Eltechs).

    • 2
      Andrey Tupkalo Andrey Tupkalo
      17.12.1516:00:57

      Там, как я понял, используются «толстые» бинарники и многопроходный оптимизирующий транслятор, который работает прозрачно для ОС. При первом запуске — выполняется голая JIT-компиляция практически без оптимизаций (код при этом складывается в дополнительную ветку бинарника), и одновременно производится автоматическое профилирование исполнения, на базе данных которого при следующей загрузке уже сгенерированный код прогоняется через оптимизации, и так до трёх раз, со всё более глубоким набором оптимизаций, пока в итоге не получится код, практически аналогичный по производительности изначально скомпилированному под Эльбрус. Да, несколько первых запусков программы будут сильно проигрывать в производительности, но зато падает общее время реакции, не надо ждать пока оно всё будет полчаса перекомпилироваться при первом запуске.

      • 2
        Сергей Барановский
        17.12.1517:36:10

        Понятно, в принципе вес верно. Но, все-таки еще такой вариант — при установке программы (которая вообще происходит только 1 раз) — почему тогда не сделать эту оптимизацию? В конце-концов можно даже спросить у пользователя- хочет он подождать 15-20 минут перекомпиляции программы. с тем чтобы потом при запуске она открывалась быстрее и работала быстро? Тогда же вообще не будет задержек — уже будет готовый оптимизированный код для запуска, просто дополнительное место на жестком диске потребуется.

        • 1
          Andrey Tupkalo Andrey Tupkalo
          11.01.1605:01:28

          Потому что это изначально фича для программ, вообще не подозревающих об Эльбрусе. Если уж делать особый инсталлятор, то тогда есть смысл вообще программу просто изначально под Эльбрус откомпилировать штатным компилятором, и не сношать никому моск.

        • 0
          Zveruga Zveruga
          04.02.1603:47:07

          Чтобы набрать правильную статистику условных переходов необходимо непосредственно исполнить код, а не просто ретранслировать.

      • 0
        shigorin shigorin
        19.09.1721:38:20

        Не, там не толстые, а многослойное оптимизирование/кэширование результатов JIT имеющихся обычных x86-бинарников. Теперь уже знаю больше    

Написать комментарий
Отмена
Для комментирования вам необходимо зарегистрироваться и войти на сайт,