Форум программистов, компьютерный форум CyberForum.ru

Непонятная разница в производительности - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Странная ошибка при сборке nasm http://www.cyberforum.ru/cpp/thread356140.html
всем привет. нужно собрать nasm для вендус. использую MSYS+MinGW. configure прошел успешно. при сборке получаю такое: nasm.h:476:5: error: expected identifier before numeric constant nasm.h:882:26: error: 'PREFIX_ENUM_LIMIT' undeclared here (not in a function)
C++ Модификация AST дерева GCC всем привет. есть задумка реализовать для GCC плагин расширяющий/добавляющий некоторые возможности С++ языку. проблемы со сбором информации из AST нет. могу получить любую необходимую мне информацию о единице трансляции. но проблема в модификации AST. вопрос в том, может ли кто-то подсказать ссылки/доки/исходники по теме? спасибо. http://www.cyberforum.ru/cpp/thread355055.html
C++ Работа с const
Объясните пожалуйста разницу между вызовами двух функций: int func(const char *name) и int func(char *name) Я плохо понимаю - что дает этот спецификатор const? Что может произойти если его не указать?
Новый стандарт принят! C++
Barry Hedquist wrote: Just received word from ANSI that the C++ FDIS has officially been approved by ISO in a unanimous vote. 21 of 21 National Bodies voted to APPROVE. Под FDIS подразумевается N3290 (отличия которого от N3291 незначительны — см. comp.std.c++ — difference between documents n3290 and n3291->...
C++ mpl проход по элементам http://www.cyberforum.ru/cpp/thread327906.html
Пытался написать вывод элементов vector_c не через for_each. Не вышло. Кто подскажет как сие сделать наиболее удобно? Пример вектора. typedef boost::mpl::vector_c<char, 'h', 'e', 'l', 'l', 'o'>::type vector; Спасибо.
C++ Compile-time алгоритмы. сборник всем привет. предлагаю в этой теме обсуждать/реализовывать/выкладывать compile-time алгоритмы. под CUT'ом. подсчет FNV1a-хеш суммы строк: #include <iostream> template<size_t N, size_t I=0> подробнее

Показать сообщение отдельно
ValeryLaptev
Эксперт С++
1017 / 796 / 48
Регистрация: 30.04.2011
Сообщений: 1,617

Непонятная разница в производительности - C++

25.12.2011, 11:55. Просмотров 11737. Ответов 18
Метки (Все метки)

Уважаемые эксперты!
Есть у меня программа на С++, код которой я транслировал в двух системах:
• Microsoft Visual Studio 2010 со штатным компилятором среды;
• Code::Blocks версии 10.05 с пакетом MinGW и компилятором g++ версии 4.6.1.
Проверка проводилась на следующей платформе:
• Процессор Intel® Core™ i3 CPU 530 @2.93, индекс производительности 6.9;
• Оперативная память 4 Гб, индекс производительности 5.9;
• Операционная система Windows 7 Максимальная, 64-разрядная.
Сделаны резизы в обеих системах
Трансляция в студии была сделана со следующими ключами (оптимизация и сопутствующие):
Без исключений = No, и RTTI = GR-
Без DLL = MT, SSE2, fp: fast
Smaoller Type Check = No,
Basic Runtime Checks = No
Buffer Sucurity Check = No
Оптимизация O2, Ot, Oy, GT, GL

Gcc транслировал с ключом O3 и -s
Процессор Intel Core 2 (но пробовал и Pentium 4 - MMX,SSE,SSE2, и даже 486)
Запускал из-под среды в режиме без отладки.

Все составные части проги работают примерно одинаково (хотя gcc-ная версия немного быстрее, но немного), а вот одна функция работает в студийной версии резко медленее, раз в 5.
Функция bfs - поиск в ширину на графе.
В качестве очереди используется стандартный дек.

Время смотрел грубо: перед вызовом и после вызова поставил clock() и взял разницу.
Проверял еще на своем ноуте с операционной системой XP - та же хрень.

Пока не нужно давать советов полезть в ассемблерный код.
Просто выскажите свои соображения из общих соображений.

Одно соображение уже видать:
для процессора Intel Core 2 gcc может генерить 64-битный код, а компилятор Студии делает 32-битный.
Но даже для 486 процессора код gcc получается сильно быстрее.

Ы?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru