почему 4х ядерный проц при компиляции загружен только на 25%?

Тема в разделе "WASM.SOFTWARE", создана пользователем maksim_, 20 окт 2009.

  1. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    cupuyc
    хз вс 2008 не чего особенного, даже иногда даю доступ только к 3 ядрам чтобы не тормозило все остальное
     
  2. maksim_

    maksim_ New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2009
    Сообщения:
    263
    SPA
    проект большой?
     
  3. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    maksim_
    да. там солюшен с 5 проэктами да и мелкие тоже норм компиляться
     
  4. slayer

    slayer New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2004
    Сообщения:
    23
    Может зависимости идут по проектам, по либам например, студия такие проекты последовательно собирает
     
  5. slayer

    slayer New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2004
    Сообщения:
    23
    В смысле, что в Project Dependencies выставлено, что одни проекты зависят от других и их Build Order должен быть определенный.
     
  6. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    slayer
    ну конечно он в зависимости от зависимостей будет собирать. Но вроде всер авно может распаралерить, вообще может не хватает оперативы, медленный винт? да и задай вопрос майкрософт
     
  7. maksim_

    maksim_ New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2009
    Сообщения:
    263
    это для сборки, а компилировать ведь сразу можно
     
  8. ruextra

    ruextra New Member

    Публикаций:
    0
    Регистрация:
    23 дек 2009
    Сообщения:
    14
    конечно всё это здорово 4 ядра, но раскинем мозгами...Устанавливая в слот 4ядерный проц, мы же не ставим 4 проца на плату,не припаеваем 4 шины и не ставим оперативы 4 слота. 4 ядра - бред полный, работает один проц и регистр cs на все ядра один, единственное что проц в конвеере сразу несколько комманд обрабатывает. Другое дело еслиб это был кластер из 4 компов, вот где сила.
     
  9. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Сорцы могут генериться пост-билд-степом другого проекта.

    Это ж как вы накурились-то?
     
  10. Blackbeam

    Blackbeam New Member

    Публикаций:
    0
    Регистрация:
    28 дек 2008
    Сообщения:
    960
    яву транслируется в набор ассемблерных команд, после чего - 3 прохода ассемблера и получается полуфабрикат, который называется exe - при его запуске специальная служба разбирается с памятью, адресами и делает из него исполняемый файл, который находится в оперативной памяти

    обычное програмирование линейно и непонятно каким образом процесс компиляции можно распараллелить

    современные многоядерные процессоры может и имеютъ какие-то небольшие преимущества по скорости ( но система - не рассчитана на это и поэтому преимущество если и есть, то небольшое ) но в основном ( наверное ) их появление связано с упрощением и удешевлением производства -

    смысл вот в чом:

    линия делает процессоры одноядерные - брак 30%

    линия делает процессоры 4-ядерные - вероятность брака одного ядра 30%, вероятность что все 4 ядра будут бракованы около 1 % , на выходе будут 1, 2 и 4 ядерные процессоры

    согласитесь - так ловчее
     
  11. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Вообще-то студии нужно ещё разрешить компилить многопоточно - Multi-processor Compilation.
     
  12. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    ruextra
    Бред какой-то.
     
  13. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    max7C4
    У вас программа только и гоняет данные по шине? Но даже если и так, посмотрите сколько сейчас каналов памяти.
     
  14. r90

    r90 New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2005
    Сообщения:
    898
    Blackbeam
    Обычное программирование использует модульный подход. То есть, создаётся куча файлов с сорцами, каждый надо по-отдельности скомпилировать, а потом получившийся объектный код слинковать. И самое что интересное, как правило нет какого-то определённого порядка, в котором надо компилировать сорцы. В сложных проектах, подчастую бывают зависимости, типа a.c нельзя компилировать до того, как скомпилирован b.c. Но как правило, помимо a.c существует ещё и c.c, который можно компилировать как до b.c, так и после. А можно и одновременно, двумя процессами. На этом и построена вся параллельность компиляции.
    Либо вы используете не ту систему, либо вы используете её не так, либо просто ошибаетесь. Практика показывает, что многоядерные процессоры дают существенный прирост в скорости работы системы.

    А насчёт сомнений в том, даёт ли распараллеливание увеличение скорости компиляции, или нет, то не надо беспокоиться. Даёт. Я проверял это на практике. Причем используя и smp систему (четырёх-ядерный проц от intel), и раздавая задания на компиляцию по сетке десятку компов (кластерная сборка). Теоретически ожидаемого ускорения в N раз, при использовании N процессоров, естественно не наблюдается, но и всё же компиляция ускоряется в разы.
     
  15. EOT

    EOT New Member

    Публикаций:
    0
    Регистрация:
    16 авг 2010
    Сообщения:
    181
  16. ruextra

    ruextra New Member

    Публикаций:
    0
    Регистрация:
    23 дек 2009
    Сообщения:
    14
    Дятел ты какойто, физику иди учи в школе...олень
     
  17. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2010
    Сообщения:
    105
    Поперхнулся кофем.

    Теперь по теме. Та же самая беда, что и у ТС. Апргрейдил комп с тайной надеждой на уменьшение времени компиляции. Теперь у меня 4-хядерный Аthlon II. Время компиляции конкретного проЭкта изменилось с 60 до 20 секунд. При компиляции работает только одно ядро. Но, я так понимаю, больше и не нужно. Всё упирается в скорость работы HDD.
     
  18. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2010
    Сообщения:
    105
    Пипец, что вы в эту сборку упёрлись? У меня компиляция занимет 60 секунд, сборка - 1 (одну).
     
  19. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2010
    Сообщения:
    105
    37 ответов, и лишь один по теме ;)
     
  20. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2010
    Сообщения:
    105
    Вернее, два.