|
|
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Очень много дискуссий о том, какой язык лучше. Но все же советую всем, кто хочет разобраться, какой компилятор лучше Delphi или C++: быстрее компилирует и лучше оптимизирует код, сделать это СОБСТВЕННОРУЧНО и не верить никаким тестам. Большинство тестов - это просто реклама фанатов того или иного языка. Во многом в тестах используются специализированные функции конкретной среды, а этого для объективной оценки нужно избегать. Во-первых, наиболее объективный ответ могут дать люди, которые в одинаковой степени хорошо знают языки и не имеет значения на каком из них писать. Я всю жизнь думал, что если писать графический движок или ядро некоторого сложного программного проекта, то его обязательно нужно писать на С++ (собственно так я и делал). Мол все вокруг говорят, что С++ лучше предназначен для этих целей, все операционные системы и драйвера на нем пишут и т.д. Но никто ни разу не говорил о том, что язык С++ для этого используется в силу его кроссплатформенности и исторически сложившихся предпочтений. К сожалению Delphi начинает сей путь только сейчас путем покорения Linux, MacOS своим открытым проектом Lazarus. Во-вторых, сравнивать нужно не языки, а компиляторы! Язык – это лишь средство представления алгоритма, и тут уже предпочтение отдается «на цвет и вкус». И в третьих, никакие интерпретируемые языки никогда не сравняться по скорости с компилируемыми (это я думаю очевидно). Хотя интерпретируемые и обладают рядом непревзойденных преимуществ над компилируемыми, но это отдельная история… Итак, начнем тест. Было взято две среды: С++ – Microsoft Visual Studio 2008 Professional Edition и Embarcadero Delphi XE. На этих языках написано две одинаковые DLL библиотеки: LibC++.dll и LibDelphi.dll. Компиляция всех проектов проводилась Release с максимальной степенью оптимизации. Расчет выполнен простой: в массиве ищем максимальное и минимальное значение, потом нормируем весь вектор и вычисляем от него сумму синусов. Это наиболее характерные задачи компьютерной графики – расчетные математические. Текст DLL библиотеки на Delphi. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. Результаты такие: LibDelphi.dll – размер 81,5 Кб; LibC++.dll – размер 61,0 Кб. При больших объемах кода эта разница в процентном отношении может быть меньше. Вывод консоли: Код: plaintext 1. 2. 3. 4. 5. Если честно, не понимаю почему такой результат, я ожидал увидеть совсем обратное. Разница: функция Delphi в 2 раза быстрее аналогичной на С++! Оптимизация на максимуме в обоих проектах. Буду благодарен, если найдете ошибку в моих рассуждениях, потому что истина дороже. Таким образом, мы протестировали простые две математические функции и увидели большую разницу (хотя в правдоподобности я сомневаюсь, сильно уж большая разница). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2011, 21:02 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ИМХО, в подавляющем большинстве случаев скорость компиляции - один из последних факторов при современных мощах писюков. Взять например скриптовые языки, и наверное, самый тормознутый из них - руби: хотя скорость исполнения кода на нем может быть на 2-3! порядка ниже откомпилированного кода С или Паскаля, это не сводит его поклонников к нулю (точнее, не этот фактор, т.к. руби всеже просел по популярности). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2011, 21:27 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Господа, вы о скорости компиляции или о скорости выполнения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2011, 21:35 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Edd.DragonГоспода, вы о скорости компиляции или о скорости выполнения? Конечно речь сейчас идет о времени выполнения функции ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2011, 23:01 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
VanoPro, Ну просто и в твоем сообщении и у arni встречается упоминание времени компиляции, но не ясно, к чему. ---- Если фраза "максимальные оптимизации" по поводу Дельфи в принципе не очень расплывчата, то на счет c++ хотелось бы увидеть параметры компиляции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2011, 23:13 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Исходники можете скачать. Пути настроены относительные ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 00:09 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
VanoPro, Ну вот решил я твои тексты под VC 2005 vs Delphi7 прогнать. Сходу как у тебя дельфя не смогла найти точку входа в процедуру сишной библиотеки, потому я сделал cdecl и убрал stdcall: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Ну и в дельфе соответственно. Завелось. Но результат вышел еще печальнее: Код: plaintext 1. 2. 3. 4. 5. Ок. А давай проверим, не выходя из VC и не делая никаких dll-ек. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. Все нормально? Вроде да. Рендомы от 0 до 1. Ну код переформатировал и поменял константы. Результат: 600 ms Давай тоже самое сделаем и с дельфи, т.е. дельфийную функциию вкомпилим в exe. Ничего не изменилось: 780 ms . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 00:22 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
А, еще: d7lib.dll - 41 472 байта vclib.dll - 6 656 байт всего )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 00:23 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Тоже попробовал наоборот в С++ использовать Delphi, в Delphi - C++, просто без библиотек с одними только ехе-шниками. Вердикт: код на С++ на 16,4 % работает быстрее, чем на Delphi . Замечание: вся проблема с таким замедлением была видимо в вызову функции (хотя не понятно почему) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 00:45 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
зато код на дэлфи быстрее компилируется, в разы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 01:17 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNзато код на дэлфи быстрее компилируется, в разы. Согласен, особенно когда кода много, а ты начинаешь править и менять при этом компилировать и запускать, то в С++ намного больше для этого требуется времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 01:23 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
VanoPro, Когда кода очень много, то обычно не принято его в один объектный файл компилировать. В итоге перекомпилируешь только то, что правишь. Ну и в с++ ты пользуешься сложными типами данных, которые реализованы шаблонами. В Дельфи же никаких шаблонов. В итоге конечно же компилятору с++ приходится много "думать", т.к. за простыми, казалось бы, строками могут скрывать весьма зубодробительные конструкции и взаимосязи. Плохо это или хорошо? Кому писать простенькие программки, тому наверняка плохо. Особенно пытаться понять что-то в монструозных сообщениях об ошибке, когда в них вываливаются километровые определения многоэтажного шаблонного типа )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 01:46 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Edd.DragonНу и в с++ ты пользуешься сложными типами данных, которые реализованы шаблонами. В Дельфи же никаких шаблонов. В итоге конечно же компилятору с++ приходится много "думать", т.к. за простыми, казалось бы, строками могут скрывать весьма зубодробительные конструкции и взаимосязи. Плохо это или хорошо? Кому писать простенькие программки, тому наверняка плохо. Особенно пытаться понять что-то в монструозных сообщениях об ошибке, когда в них вываливаются километровые определения многоэтажного шаблонного типа )) Согласен и с этим. Вобщем основная задача этой темы была определить лучший компилятор по скорости выполняемого кода. Эта задача была успешно выполнена в пользу С++. А дальше копать не будем. Все равно эти "священные" войны бесконечны. Есть поклонники и того языка и другого. Пусть каждый пишет на своем в удовольствие и без ошибок :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 01:52 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Edd.DragonVanoPro, Ну и в с++ ты пользуешься сложными типами данных, которые реализованы шаблонами. ты отстал от жизни )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 01:57 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNEdd.DragonVanoPro, Ну и в с++ ты пользуешься сложными типами данных, которые реализованы шаблонами. ты отстал от жизни )) http://sjrd.developpez.com/delphi/tutoriel/generics/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 02:05 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaN, Я про них и забыл Таки да, и тут прикрутили ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 04:31 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
может быть дело в разных менеджерах памяти? как насчет измерить время уже в функции(я про си)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 07:06 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
DLL загрузить нужно сначала, потом измерениями заниматься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 11:00 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
автор, зырьте как компиляторы сравнивают и заканчивайте заниматься изобретением лисапета :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 12:05 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
из этого видно, что в целом компиляторы борланда сосут :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 12:06 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2из этого видно, что в целом компиляторы борланда сосут :)Табличка означает, что на этапе компиляции, например выражение а+а+а+а заменяется на а*4? Дааа, это крутая оптимизация, наверное в каждой программе по много таких выражений ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 12:58 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
для изобретателей лисапета, глде версии компиляторов на рисунке? компилятор с++ будет медленне компилятора делфи за счет того, что он двухпроходный (wo-pass compiler). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 13:47 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
alneoдля изобретателей лисапета, глде версии компиляторов на рисунке? компилятор с++ будет медленне компилятора делфи за счет того, что он двухпроходный (wo-pass compiler). скорость компиляции слабо интересует, интересует скорость выполнения того, что накомпилировали насчет версий - это срез на 2010 год ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 14:16 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
когда-то давно сравнивал скорости сишных компиляторов под винду, на первых местах был интел и ватком, борландовский был самый медленный. но это были синтетеические тесты. на скорости работы приложений(клиент-серверные) это никак не сказывалось :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 14:20 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
alneoкогда-то давно сравнивал скорости сишных компиляторов под винду, на первых местах был интел и ватком, борландовский был самый медленный. но это были синтетеические тесты. на скорости работы приложений(клиент-серверные) это никак не сказывалось :-) смотря как мерять если на глазок, то наверное, не сказывается а если счет идет на миллисекунды, то очень сильно сказывается :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 14:30 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2, Но это больше относится к серверной части. А клиентские обычно характеризуются простоем и клацаньем мышки, рысованием формочек )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 14:38 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Edd.DragonАлександр2, Но это больше относится к серверной части. А клиентские обычно характеризуются простоем и клацаньем мышки, рысованием формочек )) для серверных если мерять rdtsc'ом - то видно очень сильно :) только тут проблема в том, что часто надо смотреть что сгенерил компилятор и если он ступил то пробовать переписать (не на асме, а на языке на котором пишешь) еще раз и посмотреть что опят получится.. если совсем не получается то тогда азм в руки и фпередд :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 15:54 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
у каждой фирмы свой компилятор и пр. C++ Delphi - одно, если не брать отдельно Dephi Prism, Lasarus, Кто как напишет и что применит. Вообще противопоставление дойдет от Pascal и C, а там и до ассемблеров недалеко, ЕСЛИ СКОРОСТИ НУЖНЫ, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 15:59 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
авторядро некоторого сложного программного проекта я, конечно, извиняюсь, но приведенный пример очень далеко от сложного программного проекта Сравнение производительности по одному такому параметру - не имеет смысла, уверен что для многих языков можно найти такие тесты, когда они будут чуть быстрее/чуть медленнее конкурентов. Если хочется сравнить быстродействие для сложного проекта - то хочется знать кто и как быстро работает: 1. Использование наследования Создадим иерархию из 10, 20, 100 классов - как быстро создаются экземпляры того другого Зависит ли скорость вызова членов класса от того как мы их вызываем (напрямую, интерфейс, что-нибудь ещё типа Reflection (C#)) 2. Разделить сравнение по типам задач: Работа с текстом целыми числами float массивы списки ЗЫ: Я вообще пишу на C# и по поводу скорости никаких претензий к нему не имею, с другой стороны было бы интересно хотя бы для общего развития знать что и на сколько быстрее будет работать на том же delphi/C++ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 16:02 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Asmъ есмь царь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 16:05 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
авторЗЫ: Я вообще пишу на C# и по поводу скорости никаких претензий к нему не имею, с другой стороны было бы интересно хотя бы для общего развития знать что и на сколько быстрее будет работать на том же delphi/C++ в managed средах (и в C# в частности) 2 вещи, которые ставят крест на скорость: 1) проверки всего и вся (например, чтобы обратиться к элементу массива за первой строкой кеша, все равно придется первую подгрузить, чтобы узнать размер и соответственно проверить за выход за границы) + много чего 2) GC эти 2 проблемы решаемы в определенных рамках, но код становится сложнее, чем на С++ :) код, где нет этих 2 пунктов, будет работать также как на C++ (а то и быстрее, благодаря jit) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 16:27 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2например, чтобы обратиться к элементу массива за первой строкой кеша, все равно придется первую подгрузить, чтобы узнать размер и соответственно проверить за выход за границы Не совсем понял, что имеется ввиду. Можно на примере? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 16:35 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Edd.DragonАлександр2например, чтобы обратиться к элементу массива за первой строкой кеша, все равно придется первую подгрузить, чтобы узнать размер и соответственно проверить за выход за границы Не совсем понял, что имеется ввиду. Можно на примере? у вас массив - например 256 элементов, обращаетесь к элементу с номером > 64 (длина строки кеша на большинстве процессоров, + предположим сам указатель массива выровнен на 64 байта (для простоты)), соответственно подгружается строка кеша, которая содержит нужный элемент, + так как надо проверить выход за границы, то надо подгрузить в кеш начало объекта (там хранится длинна массива), т.е. по сути 2 строки кеша подгружаем но опять таки, не все так просто.... компилятор C# об этом знает, поэтому если вы бежите в цикле по массиву, то он обращается только один раз к переменной в которой хранится длина - далее на время цикла длину в регистре хранит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 17:08 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Edd.DragonZyK_BotaN, Я про них и забыл Таки да, и тут прикрутилиДженерики - это не совсем шаблоны. Начнем с того, что тело дженерик-класса компилируется в .DCU ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 19:13 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
КвейдEdd.DragonZyK_BotaN, Я про них и забыл Таки да, и тут прикрутилиДженерики - это не совсем шаблоны. Начнем с того, что тело дженерик-класса компилируется в .DCU ну и слава богу, что не совсем шаблоны, хоть компилируются за ограниченное время, не то что тюрринг полные тэмплэйты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 19:21 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNКвейдпропущено... Дженерики - это не совсем шаблоны. Начнем с того, что тело дженерик-класса компилируется в .DCU ну и слава богу, что не совсем шаблоны, хоть компилируются за ограниченное время, не то что тюрринг полные тэмплэйты. очень жаль, что не совсем шаблоны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 21:07 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2ZyK_BotaNпропущено... ну и слава богу, что не совсем шаблоны, хоть компилируются за ограниченное время, не то что тюрринг полные тэмплэйты. очень жаль, что не совсем шаблоны Алесандреску, перелогинтесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 21:08 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNАлександр2пропущено... очень жаль, что не совсем шаблоны Алесандреску, перелогинтесь. ой простите :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 22:27 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2ZyK_BotaNпропущено... Алесандреску, перелогинтесь. ой простите :) а реально, тебе когда-то была нужна вся мощь шаблонов? они же тактие неудобные. единственно где я видел примеры нетривиального кода на шаблонах - в книге алекснадреску. если хочешь метапрограммировать, юзай коммон лисп, это я так думаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 22:30 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNАлександр2пропущено... ой простите :) а реально, тебе когда-то была нужна вся мощь шаблонов? они же тактие неудобные. единственно где я видел примеры нетривиального кода на шаблонах - в книге алекснадреску. если хочешь метапрограммировать, юзай коммон лисп, это я так думаю. удивишься, но сцуко постоянно, когда пишу на C++ по большей части потому что для тех прог что я пишу, стоимость вызова виртуальной функции - дюжа много, приходится полиморфизм на шаблонах лепить, с жестким метапрограммированием местами а вообще хорошо обобщенный и грамотно написанный код у меня вызывает вАсторгГ :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 22:44 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2 а вообще хорошо обобщенный и грамотно написанный код у меня вызывает вАсторгГ :) но разве темплєйті для єтого лучший вібор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 22:46 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNАлександр2а вообще хорошо обобщенный и грамотно написанный код у меня вызывает вАсторгГ :) но разве темплєйті для єтого лучший вібор? да, все биндается на этапе компиляции, никаких накладных расходов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 22:47 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2ZyK_BotaNпропущено... но разве темплєйті для єтого лучший вібор? да, все биндается на этапе компиляции, никаких накладных расходов то-то кде по фрибєєсди двое суток собирается ))) з.і. макрі в лиспе удобней, гораздо. да и темплєйті си++ не вписіваются в язік ті не можешь например строку разобрать а в лиспе, при работе с рєкєкспами, они компилируются при компиляции(так как макрі лиспа органично сочетаются с язіком, и что можно в рантайме, то можно и при компиляции), что дает нехилій прирост в производительности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 22:49 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
не надо пытаться в один езыГ запихнуть все что только можно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 22:56 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2не надо пытаться в один езыГ запихнуть все что только можно :) вот потому я и не люблю с++. мало того что пихают все, дак оно еще и не органично вписівается. а в лиспе все четко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2011, 23:00 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNАлександр2не надо пытаться в один езыГ запихнуть все что только можно :) вот потому я и не люблю с++. мало того что пихают все, дак оно еще и не органично вписівается. а в лиспе все четко. я вам так скажу - С++ божественен ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 12:24 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2из этого видно, что в целом компиляторы борланда сосут :) Получается что у Intel и Gnu больше всего опций. Но только-ли опции нужны разработчикам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 12:27 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
On 21.08.2011 22:02, VanoPro wrote: > Очень много дискуссий о том, какой язык лучше. Но все же советую всем, кто хочет > разобраться, какой компилятор лучше Delphi или C++: быстрее компилирует и лучше > оптимизирует код, сделать это СОБСТВЕННОРУЧНО и не верить никаким тестам. > Большинство тестов - это просто реклама фанатов того или иного языка. Во многом ФГМ ? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 13:45 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
On 22.08.2011 2:52, VanoPro wrote: > Согласен и с этим. Вобщем основная задача этой темы была определить лучший > компилятор по скорости выполняемого кода. Эта задача была успешно выполнена в > пользу С++. Диагноз подтверждается. :-( Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 13:47 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
VanoProСогласен и с этим. Вобщем основная задача этой темы была определить лучший компилятор по скорости выполняемого кода. Эта задача была успешно выполнена в пользу С++. А дальше копать не будем. Интересно а какой "минимум" тестов нужно исполнить чтобы решить, какой компиллятор лучший? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 13:51 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2ZyK_BotaNпропущено... вот потому я и не люблю с++. мало того что пихают все, дак оно еще и не органично вписівается. а в лиспе все четко. я вам так скажу - С++ божественен ) Так точно!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 13:57 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
maytonАлександр2из этого видно, что в целом компиляторы борланда сосут :) Получается что у Intel и Gnu больше всего опций. Но только-ли опции нужны разработчикам? это не опции - это, что реально умеет делать компилятор, т.е. какие оптимизации выполнять ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2011, 15:51 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
No b0dyVanoPro, ты неправильно тестишь. Здесь дельфи даже медленнее C#, а тем более джавы или C++ Угу. В 2004-ом году в НЕнативных расчетах с 64-битными числами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2011, 18:53 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2ZyK_BotaNпропущено... но разве темплєйті для єтого лучший вібор? да, все биндается на этапе компиляции, никаких накладных расходов Это не так. Шаблоны порождают множественность инстанциаций, чем увеличивают объем маш.кода, и это негативно скажется на КПД процессорного кэша. Но в целом уровень оптимизации шаблонов очень хороший. Есть тесты Степанова, проверяющие это для разных компиляторов. И тут на форуме есть сравнения например искать scimark. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2011, 19:42 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
SiemarglАлександр2пропущено... да, все биндается на этапе компиляции, никаких накладных расходов Это не так. Шаблоны порождают множественность инстанциаций, чем увеличивают объем маш.кода, и это негативно скажется на КПД процессорного кэша. Но в целом уровень оптимизации шаблонов очень хороший. Есть тесты Степанова, проверяющие это для разных компиляторов. И тут на форуме есть сравнения например искать scimark. выделенное - это атас... шоконкретно вы ввиду имеете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2011, 14:55 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
SiemarglЕсть тесты Степанова, проверяющие это для разных компиляторов. В это время объявляют: Состязаниям конец. Дядю Стёпу поздравляют: - Ну, Степанов! Молодец! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2011, 15:02 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2, Ежели какое слово Вам непонятно, то прилежное гугление и чтение проф.статей и форумов с разработчиками компиляторов может помочь. А может и нет. Если проще - то вот: "шаблоны тоже имеют накладные расходы" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2011, 12:16 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
SiemarglАлександр2, Ежели какое слово Вам непонятно, то прилежное гугление и чтение проф.статей и форумов с разработчиками компиляторов может помочь. А может и нет. Если проще - то вот: "шаблоны тоже имеют накладные расходы" на первой странице гугл не вывел ни одной вменяемой ссылки, дальше смотреть влом вы можете нормальными словами объяснить что вы хотели сказать? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2011, 10:54 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Александр2Siemarglпропущено... Это не так. Шаблоны порождают множественность инстанциаций, чем увеличивают объем маш.кода, и это негативно скажется на КПД процессорного кэша. Но в целом уровень оптимизации шаблонов очень хороший. Есть тесты Степанова, проверяющие это для разных компиляторов. И тут на форуме есть сравнения например искать scimark. выделенное - это атас... шоконкретно вы ввиду имеете? template, как и generics - это copy&paste, китайский метод программирования - но возведенный в абсолют. В результате современный начинающий говнокодер программист уже не может думать динамическим массивом (realloc), ибо атрофия мозга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 22:09 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуВ результате современный начинающий говнокодер программист уже не может думать динамическим массивом (realloc), ибо атрофия мозга. мда уж. параметрический полиморфизм - важный аспект типизации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 22:11 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNПоясним чупачупсуВ результате современный начинающий говнокодер программист уже не может думать динамическим массивом (realloc), ибо атрофия мозга. мда уж. параметрический полиморфизм - важный аспект типизации. Разъясни это чувакам, написавшим Linux Kernel или Apache HTTPD. А то вдруг они не знают, что нынче важно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 22:22 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуZyK_BotaNпропущено... мда уж. параметрический полиморфизм - важный аспект типизации. Разъясни это чувакам, написавшим Linux Kernel или Apache HTTPD. А то вдруг они не знают, что нынче важно? а не буду я им ничего разъяснять, написали - и молодцы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 22:26 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNа не буду я им ничего разъяснять, написали - и молодцы. Ты не юли. Ты давай рассказывай, что у них там не так с типизацией, и как так - темплейтов нет, а продукт пишут. Что они делают не так? Или может это ты, как и многие тысячи любителей STL/Boost - таки чего-то сильно не догоняете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 23:20 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуZyK_BotaNа не буду я им ничего разъяснять, написали - и молодцы. Ты не юли. Ты давай рассказывай, что у них там не так с типизацией, и как так - темплейтов нет, а продукт пишут. Что они делают не так? Или может это ты, как и многие тысячи любителей STL/Boost - таки чего-то сильно не догоняете? че тебе рассказывать. все равно не поймешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 23:22 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
1ZyK_BotaNче тебе рассказывать. все равно не поймешь. Ты не мне рассказывай. Ты себе и подобным расскажи. А мы посмотрим - способен ли ты к осмысленной деятельности (объяснению), или только способен бездумно подражать, слабо понимая, зачем оно тебе вообще надо. Попробуй. Или тебе это так сложно? Так зачем тебе темплейты? Конкретный пример можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 23:31 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсу1ZyK_BotaNче тебе рассказывать. все равно не поймешь. Ты не мне рассказывай. Ты себе и подобным расскажи. А мы посмотрим - способен ли ты к осмысленной деятельности (объяснению), или только способен бездумно подражать, слабо понимая, зачем оно тебе вообще надо. Попробуй. Или тебе это так сложно? Так зачем тебе темплейты? Конкретный пример можно? ну, сначала нужно выяснить, нужна ли статическая типизация в принципе. если нужна, то и параметрический полиморфизм пригодится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 23:37 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNну, сначала нужно выяснить, нужна ли статическая типизация в принципе. В принципе нужна. И в ANSI C она есть и всегда была. ZyK_BotaNесли нужна, то и параметрический полиморфизм пригодится. Это логически бессмысленное и бессвязное утверждение. Статическая типизация может жить и без параметрического полиморфизма, он ей - не нужен, и помощи никакой от него нет. Еще раз - какая в ней польза, кроме упорядочивания китайского метода программирования через copy&paste? Давай уже пример, когда без параметрического полиморфизма вообще никак нельзя? Даже чисто идеи ради? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 23:43 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуЕще раз - какая в ней польза, кроме упорядочивания китайского метода программирования через copy&paste? ну копи&паст - это способ реализации параметрического полиморфизма в си++, в других можно по другому. польза от не в том, что мы пишем обобщенный код, но при этом, проверка типов - работает. т.е. если список целых, то строки там быть ну никак не может. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 23:46 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуZyK_BotaNну, сначала нужно выяснить, нужна ли статическая типизация в принципе. В принципе нужна. И в ANSI C она есть и всегда была. си - весьма условно статически типизирован, а главное не очень строго. в нем можно без параметрического полиморфизма, а вот статически строго типизированных языках типо хаскеля - никак без него. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2011, 23:48 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNПоясним чупачупсуЕще раз - какая в ней польза, кроме упорядочивания китайского метода программирования через copy&paste? ну копи&паст - это способ реализации параметрического полиморфизма в си++, в других можно по другому. польза от не в том, что мы пишем обобщенный код, но при этом, проверка типов - работает. т.е. если список целых, то строки там быть ну никак не может. А как насчет того, что вместо массива структур число-строка современный чумазый говнокодер в 50% случаев напишет два вектора - чисел и строк (даже не объектов)? И чем ему помогут темплейты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:00 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNПоясним чупачупсупропущено... В принципе нужна. И в ANSI C она есть и всегда была. си - весьма условно статически типизирован, а главное не очень строго. в нем можно без параметрического полиморфизма, а вот статически строго типизированных языках типо хаскеля - никак без него. Попробуй присвоить значение переменной одного typedef от стуктуры - другой, от другой структуры. То-же - с указателями (и много думай, читая warning). А потом приходи и рассказывай про слабую типизацию в C. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:03 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуZyK_BotaNпропущено... ну копи&паст - это способ реализации параметрического полиморфизма в си++, в других можно по другому. польза от не в том, что мы пишем обобщенный код, но при этом, проверка типов - работает. т.е. если список целых, то строки там быть ну никак не может. А как насчет того, что вместо массива структур число-строка современный чумазый говнокодер в 50% случаев напишет два вектора - чисел и строк (даже не объектов)? И чем ему помогут темплейты? хотел ответить, а потом понял что ты подводишь к тому, что не "современный чумазый гонокодер" не засунит в массив целых - строку. да? ну тогда да, статическая типизация не нужна, ведь тру олдфаг мегакодер - никогда не ошибается. да и если отбросить понятие ошибки. почему я должен думать про какойто объект(например коллекцию, что это коллекция объектов, но не могу конкретизировать, что целых объектов? вот пример, ты же его просил. есть сигнатура ф-и: void f(List<int> list); и void f(List list); какой код читабельнее и понятнее? с первой сигнатуры мы можем понять гораздо больше. в строготипизированном хаскеле, вообще часто можно по сигнатуре ф-и понять что она делает. в си конечно с этим проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:06 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуZyK_BotaNпропущено... си - весьма условно статически типизирован, а главное не очень строго. в нем можно без параметрического полиморфизма, а вот статически строго типизированных языках типо хаскеля - никак без него. Попробуй присвоить значение переменной одного typedef от стуктуры - другой, от другой структуры. То-же - с указателями (и много думай, читая warning). А потом приходи и рассказывай про слабую типизацию в C. он слаботипизирован по сравнению с семейством ML. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:07 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNкакой код читабельнее и понятнее? И первое и второе - говнокод. Массив целых чисел - абслютно бредовая конструкция, хоть в чистом виде, хоть в виде твоего List <int>. Нет такой абстрации для хранения данных - массив целых. Для обработки - может быть. Но не для храения/представления/аргументов/параметров. А вот насчет строк - если внимательно посмотреть код nginx, gdb и не только, то можно увидеть, что строки нынче принято хранить в виде структуры - {длина в байтах, rawdata}. А не в виде strz. В этом случае попутать строку и массив целых как-то и не получится, просто так. И так во всем. Просто кардинальные типы, в чистом виде - это бред сивой кобылы. Кури структуры, даже размером в один байт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:19 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуZyK_BotaNкакой код читабельнее и понятнее? И первое и второе - говнокод. Массив целых чисел - абслютно бредовая конструкция, хоть в чистом виде, хоть в виде твоего List <int>. Нет такой абстрации для хранения данных - массив целых. Для обработки - может быть. Но не для храения/представления/аргументов/параметров. окэй. возьмем пример из хаскеля. есть монада IO. мы прочитали цеэлой, поэтому тип будет IO Int. прочитаем строку, будет тип IO String. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:23 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNпрочитаем строку, будет тип IO String. Мне фиолетовы проблемы хаскеля, питона, PHP и прочей ерунды вроде руби. В рамках Pure C vs C++ я готов поговорить. В части бессмысленной бесполезности шаблонов, STL, Boost и прочей пакости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:31 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Поясним чупачупсуZyK_BotaNпрочитаем строку, будет тип IO String. Мне фиолетовы проблемы хаскеля, питона, PHP и прочей ерунды вроде руби. В рамках Pure C vs C++ я готов поговорить. в этих рамках можно обойтись без параметрического полиморфизма, так как эти языки в меру динамические. а я говорил, хочешь статики - юзай параметрический полиморфизм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:33 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNа я говорил, хочешь статики - юзай параметрический полиморфизм. А я говорю - параметрический полиморфизм нафиг не нужен, ни мне, ни вообще. Это очередная попытка совладать с буйным говнокодерством. На практике-же - она только усложняет реализацию задачи, а помощи - ноль. Более того - когда начинаешь прижимать говнокодеров STL-иков к ответу, то дальше списков-векторов и итераторов они ничего промямлить не могут (и в коде их ничего больше обычно и нет). А когда понаперекрывают операций - так вообще караул. Читаешь код, и... никогда не знаешь, что за херня вот это понаписана. В сад. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 00:59 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Смешно, не правда ли? Ну вот! И вам смешно, и даже мне... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 01:11 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
VanoPro, Обычно на С/С++ используют указатели, а также циклы стараются в обратную сторону крутить, поэтому можно переписать так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. А как будут дела обстоять, если написать загрузку dll и вызов функций из С++? Кстати говоря компиляторы бывают разные и по разному они оптимизируют, и компилятор от Intel в некоторых момента может генерить лучший код чем компилятор от Microsoft и наоборот. Какой смысл вообще выяснять? допустим кто-то быстрее и что? нужно сразу перескакивать на самый быстрый? Главное, чтобы работало с приемлемой скоростью, а все остальное мышиная возня. Уже не раз убеждался, что людям, которым я сдаю работу, глубоко по барабану, как оно там у меня работает, иногда они просят сделать быстрее или увеличить период обрабатываемых данных, но ни разу ни кто в мой код не заглянул, а все потому что они просто не понимают его ... И красивая форма, над которой я возился некоторое время им до лампочки, пусть там будет обычная, пусть будет хоть консольное приложение, главное результат, потому что результат - это деньги, а красивая форма, это понты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 10:47 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
шаблоны позволяют повторяющийся код записать короче, одинаковый дублирующийся код для разных типов никуда в производимом компилятором машинном коде не девается, это и имел в виду написавший "Шаблоны порождают множественность инстанциаций" шаблоны лишь позволяют укоротить эту вермишель дублирующегося кода в исходном коде, позволяя писать более компактный, читаемый и менее подверженный ошибкам код Искренне Ваш, К.О. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 14:21 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNт.е. если список целых, то строки там быть ну никак не может.О! Вот тут то мы и подошли к самому главному вопросу, а часто ли нам нужен список целых, в который мы будем подставлять не только целые а еще и хэндлы окон, и строки, и ключи хэш-дикшнери? Сколько в % от кода в среднем современном энтерпрайз приложении выигрывает от применения шаблонов/обобщений? Древний фортран например обходился без обобщений, если функция от INT, то никто не умудрялся пихать в нее FLOAT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 14:26 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
К. 0.Древний фортран например обходился без обобщений, если функция от INT, то никто не умудрялся пихать в нее FLOAT может потому что на дрвевнем фортране больше решалось вычислительных задач? без сложных моделей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2011, 14:42 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
в Delphi реализовано значительно лучше управление динамическим выделением и освобождением объектов, а в MS VC++ вообще никак... большинство кодеров на С++ не сталкивается с проблемой фрагментации памяти, а я вот недавно конкретно потрах..ся пока обратно на Delphi не пересел. сразу скажу, для умников, проблема не связана с оптимальностью кода. долго пытался юзать различные сторонние библиотеки C++, но потом плюнул - нахрена изобретать велосипед зная что в делфи всё это уже есть, и ОТЛИЧНО работает, и работает очень быстро.... и ещё. недавно коллегам-теоретикам начинающим большой комерческий проект на C++ сделал по этому поводу замечание, что мол желательно заренее подумать об этой проблеме, на что они поморгали глазками - это всё ересть. эх посмотрю я на их рожи через пару лет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2011, 10:05 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
novexelf, А зачем цикл крутить в обраную сторону, а не вперёд, так быстрее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2011, 11:04 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
I dont knownovexelf, А зачем цикл крутить в обраную сторону, а не вперёд, так быстрее? да и просто удобней(а тк да, и не надо каждый раз проверять на равенство) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2011, 15:33 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Сколько умных речей =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2011, 22:19 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
I dont knownovexelf, А зачем цикл крутить в обраную сторону, а не вперёд, так быстрее?В ассемблере 8086 есть команда Loop которая крутит цикл в обратную сторону. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2011, 10:01 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
I dont knownovexelf, А зачем цикл крутить в обраную сторону, а не вперёд, так быстрее? Не думаю. Просто логика меняется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 11:29 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
qwerty_odin_takoyI dont knownovexelf, А зачем цикл крутить в обраную сторону, а не вперёд, так быстрее? Не думаю. Просто логика меняется.Старые привычки старых сишников, которые хорошо осведомлены были о том в какой ассемблерный код превращается программа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 11:36 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Worobjoffqwerty_odin_takoyпропущено... Не думаю. Просто логика меняется.Старые привычки старых сишников, которые хорошо осведомлены были о том в какой ассемблерный код превращается программа. Если параметр цикла будет каким-то образом участвовать при адресации к диску или памяти - мы получим просадку производительности. За что боролись на то и напоролись. Аккурантее надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 12:46 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
maytonЕсли параметр цикла будет каким-то образом участвовать при адресации к диску или памяти - мы получим просадку производительности. За что боролись на то и напоролись. Аккурантее надо.30 лет назад на IBM-ках не было виртуальной памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 12:49 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
WorobjoffmaytonЕсли параметр цикла будет каким-то образом участвовать при адресации к диску или памяти - мы получим просадку производительности. За что боролись на то и напоролись. Аккурантее надо.30 лет назад на IBM-ках не было виртуальной памяти. Была ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 12:54 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)Worobjoffпропущено... 30 лет назад на IBM-ках не было виртуальной памяти. Была На писишках - не было. Я про IBM-PC, про процессор 8086 и 80286, и про язык С для них. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 13:03 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
WorobjoffGluk (Kazan)пропущено... Была На писишках - не было. Я про IBM-PC, про процессор 8086 и 80286, и про язык С для них. А вот 80286 не было 8086 правда уже был, но тока тока появился. И да, язык C был не для них ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 13:19 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Worobjoffпро процессор 8086 и 80286, и про язык С для них. вообще-то для PDP-11 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 13:24 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ИзопропилWorobjoffпро процессор 8086 и 80286, и про язык С для них. вообще-то для PDP-11 Да, но рекомендация крутить циклы вниз до нуля пошла от писишек и их процессоров семейства x86 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 13:27 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
WorobjoffИзопропилпропущено... вообще-то для PDP-11 Да, но рекомендация крутить циклы вниз до нуля пошла от писишек и их процессоров семейства x86 источник? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 13:45 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)Worobjoffпропущено... Да, но рекомендация крутить циклы вниз до нуля пошла от писишек и их процессоров семейства x86 источник? Да забейте. Из всех оптимизаций это самая слабая. От неё больше вреда чем пользы. Ну в крайнем случае для ассемблера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2011, 14:26 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNПоясним чупачупсуВ результате современный начинающий говнокодер программист уже не может думать динамическим массивом (realloc), ибо атрофия мозга. мда уж. параметрический полиморфизм - важный аспект типизации.Что-то мне кажется, что настоящий параметрический полиморфизм был бы, если бы мы могли написать так: Код: plaintext 1. 2. 3. 4. 5. 6. То есть, если бы не было erasure. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2011, 19:02 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
В Java, в смысле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2011, 15:27 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
XEugeneZyK_BotaNпропущено... мда уж. параметрический полиморфизм - важный аспект типизации.Что-то мне кажется, что настоящий параметрический полиморфизм был бы, если бы мы могли написать так: Код: plaintext 1. 2. 3. 4. 5. 6. полный пример кода можно, а то я в первую очередь не пойму, зачем вам "<? extends T>" вместо обычного "Т". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2011, 15:31 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
XEugene, а вообще - "параметрический полиморфизм" - годная вещь, но в жаве он не работает не из-за стирания типов. хороший годный пример параметрического полиморфизма - в языке хаскельь, подобный функционал хаскель хотел прикрутить к новому стандарту с++(под названием концепты), но там были проблемы совместимости с поведением языка си. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2011, 15:42 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNполный пример кода можно, а то я в первую очередь не пойму, зачем вам "<? extends T>" вместо обычного "Т". Пример вымышленный, можно было написать то же самое короче Код: plaintext Понятно, что если такое допустить то сам смысл дженериков теряется. Но тогда был бы настоящий полиморфизм - с поздним связыванием. Но позднее связывание как раз и невозможно из-за стирания. Конечно, именно для параметризованных коллекций это не нужно(смысл ограничения типов теряется, как уже было сказано). А вот возможность присвоить переменной типа Т объект типа ? extends T была бы полезна. Есть метод, принимающий параметр типа Т, передаём в него наследника Т и вызываем у него какой-то метод. И это будет именно метод наследника, а не супертипа, а он то нам и нужен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2011, 18:54 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
XEugeneZyK_BotaNполный пример кода можно, а то я в первую очередь не пойму, зачем вам "<? extends T>" вместо обычного "Т". Пример вымышленный, можно было написать то же самое короче Код: plaintext эээ. не путай полиморфизмы )) есть ad-hoc полиморфизм(тот который с поздним связыванием) а есть параметрический полиморфизм. не путай эти два совершенно разных полиморфизма. XEugeneZyK_BotaNполный пример кода можно, а то я в первую очередь не пойму, зачем вам "<? extends T>" вместо обычного "Т". Пример вымышленный, можно было написать то же самое короче Код: plaintext а это да, огромный недочет жабы, но не параметрического полиморфизма. и вообще - параметрический полиморфизм - штука статическая а не динамическая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2011, 19:19 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Что-то автор загнал своими тестами Intel C++ в такую задницу. Неужели не мог там хоть флажки оптимизации покрутить. Хех... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 00:48 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Сомневаюсь, что автор статьи понимает о чем пишет.(рассуждения про управляемые среды доставляют) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 10:38 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Насколько я понимаю из ссылок, автор - некто Владислав Чистяков, Технический редактор журнала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 10:51 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Как компиляторы вычисления n0-n3 оптимизируют? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 10:58 |
|
||
|
Delphi быстрее С++?
|
|||
|---|---|---|---|
|
#18+
Можно попробовать продифференцировать Код: plaintext 1. 2. 3. 4. и учитывать дельта-t на каждой итерации. Вроде как степень понизим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2012, 11:04 |
|
||
|
|

start [/forum/topic.php?all=1&fid=16&tid=1342010]: |
0ms |
get settings: |
5ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
117ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 396ms |

| 0 / 0 |
