Часовой пояс: UTC + 3 часа




Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 67 • Страница 4 из 4<  1  2  3  4
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 20.03.2011
Откуда: Москва
NiTr0 во-первых уже в 4.5 сортировка работает совсем по-другому
во-вторых я тоже могу привести код на шарпе, который работает быстрее аналогичного С++ :)

_________________
I would tell you a joke about UDP, but you probably wouldn't get it.



Партнер
 

Member
Статус: Не в сети
Регистрация: 04.06.2004
Varg писал(а):
Если бы даже полчаса - какая разница, тратит он их на установку программы или на компиляцию?

5 минут установка или полчаса? Ну совсем нет разницы :)

Varg писал(а):
Можно по-прежнему компилировать код в мгновенном режиме, как делается сейчас JIT компиляторами. Часть кода все равно так компилируется, в частности созданный в процессе работы (runtime generated code). Если же софт прямо сейчас не требуется, оптимизировать его фоновым процессом пост-инсталла.

И телефон будет жить 3 часа без розетки :)

Varg писал(а):
Математика в офисе, т.е. экселе и акцесе, как она выполняется сейчас - крайне тормозной процесс. Обрабатывается она чистым интерпретатором и строго последовательной вычислительной программой. Скорость легко проверить. Там разрыв не на порядок от C99, а в сотни и тысячи раз.

Математика в офисе, как она может работать на виртуальной машине - runtime generated code. Вся математика на листах читается JIT компилятором и превращается в набор исполнимых сегментов. Не заоптимизированных до дыр в двадцатилетнем коде, но компилированных, и потому выполняемых с адекватной производительностью.

Примеры такового самогенерящегося дотнет кода будут? И да, что там по сложности компиляции выражений, которые не совсем тривиальные?

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

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

Вот только этот байт-код оптимизировать-то некуда практически :) Имеем что имеем, со строго типизированными данными, и к примеру профит от 64бит при операциях с памятью (да хоть xor массивов) не получить.

Psilon писал(а):
во-первых уже в 4.5 сортировка работает совсем по-другому

Во-первых, и для самописной сортировки слив в 3 раза.

Psilon писал(а):
во-вторых я тоже могу привести код на шарпе, который работает быстрее аналогичного С++

Тупое создание классов?
Сравните банальное перемножение матриц. Без unsafe. Без особых ужимок, банальный перебор влоб. Вполне реальная задача к слову.
С unsafe - да, веселее, но к managed коду отношение бует иметь весьма косвенное, ибо привет ошибки в реальной программе.


 

Member
Статус: Не в сети
Регистрация: 20.03.2011
Откуда: Москва
NiTr0 тупое выполнение метода main с одинаковым кодом вызова функций

Добавлено спустя 7 минут:
NiTr0 что касается этой "самописной сортировки" - дебильный китайский код это конечно очень круто:) Если первая сортировка выглядит так:
Код:
int arr[10];
int i;
for (i = 0; i < 10; i++)
{
  arr[i] = 0;
}

то вторая выглядит так:
Код:
int a0 = 0;
int a1 = 0;
int a2 = 0;
int a3 = 0;
int a4 = 0;
int a5 = 0;
int a6 = 0;
int a7 = 0;
int a8 = 0;
int a9 = 0;

и это даже будет побыстрее, чем массив с циклом. Ведь не надо ни высчитывать смещение, ни инкрементировать счетчик... Быдлокод в своей красе. Не говоря про дебилизм высчитывания с DateTime.Now... Функция деления двух чисел на асме тоже будет намного быстрее, чем на срр лолд. Только программы несколько сложнее, а там внезапно преимущества теряются.

_________________
I would tell you a joke about UDP, but you probably wouldn't get it.


 

Member
Статус: Не в сети
Регистрация: 04.06.2004
Psilon писал(а):
NiTr0 что касается этой "самописной сортировки"...

Код смотрели, не?
Что для С++, что для C#, сортировка алгоритмически реализована идентично.
И да, будь С++ код скомпилирован не майкрософтовским компилятором, а тем же GCC с -O2/-O3, разница была бы еще более внушающей.

К слову, тот же GCC в вашем примере в обеих случаях даст один и тот же код. Развернув цикл, да.

Psilon писал(а):
Не говоря про дебилизм высчитывания с DateTime.Now...

В чем дебилизм-то? И что, оно внест сколь-либо значимую погрешность, при времени исполнения кода 100 мсек и более?

Psilon писал(а):
Функция деления двух чисел на асме тоже будет намного быстрее, чем на срр

Не будет. Деление - одна инструкция. А не функция :)


 

Member
Статус: Не в сети
Регистрация: 20.03.2011
Откуда: Москва
NiTr0 не суть. Короче: смысла в чистом С++ давно нету. Только с++ "с человеческим лицом" aka Qt развиваются и не дают тому помереть.

Неужели неясно, что при бесконечном числе денег и времени любой адекватный программист напишет идеальную программу, которая будет жрать 640к и не иметь ни одного бага? Я могу на своем примере сказать: у меня еще компания нормальная, если я набыдлокодил, чтобы сделать результат, я могу потратить пару дней на рефакторинг и приведение всего в порядок. А много где - не так. Сделал функционал, криво, но работает? - ну и ладно, делай дальше. Сроки даются сверху менеджерами, они к прогерам отношения практически не имеют. А с начальством спорить кардинально бесполезно, а по мелочи - сильно незаметно (хотя этим почти всего и занимаемся). Такое ощущение, что прогеры думают "ага, новый 16-ядерный проц вышел, напишу ка я похуже этот модуль". Люди работают и тратят на это время. Многие энтузиасты работают даже в нерабочее время, чтобы вам было получше и поприятнее. Это непростой труд, сделать качественную и рабочую программу без багов, даже сказанное относится к разделу фантастики. А чтобы она была еще и быстрой... Вы готовы ждать новую винду без багов и лагов 40 лет, при этом стоить она будет как самолет? Нет? Тогда о чем речь?

_________________
I would tell you a joke about UDP, but you probably wouldn't get it.


 

Member
Статус: Не в сети
Регистрация: 04.06.2004
Psilon писал(а):
Короче: смысла в чистом С++ давно нету. Только с++ "с человеческим лицом" aka Qt развиваются и не дают тому помереть.

Да ну? Не, может в компании, где вы работаете, все так и обстоит, но в целом, особенно за пределами "экосистемы" майкрософт - С/С++ живет и здравствует.

Psilon писал(а):
Вы готовы ждать новую винду без багов и лагов 40 лет, при этом стоить она будет как самолет? Нет? Тогда о чем речь?

Открою секрет: в винде практически все на нативном коде :) managed код где-то в уголке, во вспомогательных утилитах...


 

Member
Статус: Не в сети
Регистрация: 20.03.2011
Откуда: Москва
NiTr0 я в курсе. Вы не поверите, но 20 лет назад, когда первые винды как раз появлялись на свет, С++ считался тормознутым и убогим с кучей ненужных фич, когда как старые и проверенные средства вроде C/ASM работают как часы, на которых уже написанно куча прекрасного софта (ничего не напоминает, ммм?). Так что все движется своим чередом. Программирование развивается, а не деградирует. Кто бы что не говорил.

_________________
I would tell you a joke about UDP, but you probably wouldn't get it.


Показать сообщения за:  Поле сортировки  
Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 67 • Страница 4 из 4<  1  2  3  4
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan