Форум программистов, компьютерный форум, киберфорум
Наши страницы

Инлайн-функция замедляет работу - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Даны шесть различных чисел. Определить максимальное из них http://www.cyberforum.ru/cpp-beginners/thread834829.html
Даны шесть различных чисел. Определить максимальное из них. (Определить функцию, находящую максимум из двух различных чисел.) Еще одна подобная тема, и последуют санкции.
C++ Выяснить является ли хоть одно из данных чисел палиндромом(перевёртышем) Даны 2 натуральных числа выяснить является ли хоть одно из них палиндромом(перевёртышем) тоесть таким числом десятичная запись которого читается одинаково слева на право и справо на лево.(определить... http://www.cyberforum.ru/cpp-beginners/thread834825.html
C++ Лучшие ресурсы в Интернет - разработчикам C++
Все источники широко известны - но тем не менее: http://strongcpp.blogspot.ru/2013/04/c.html
C++ Получить все шестизначные счастливые номера
Получить все шестизначные счастливые номера. Счастливым называют такое шестизначное число, в котором сумма ею первых трех цифр равна сумме его последних трех цифр. (Определить функцию для расчета...
C++ перегрузка оператора вычитания строк http://www.cyberforum.ru/cpp-beginners/thread834812.html
#include "stdafx.h" #include <string.h> #include <iostream> using namespace std; class Stroka{ char str; int len;
C++ Что быстрее, операция присваивания или сравнения? Всем доброго времени суток, такой вод у меня дурацкий вопрос сидит в голове, "Что быстрее, операция присваивания или сравнения?". Вот конкретная задача, почему я это спрашиваю: Пишу приложение в... подробнее

Показать сообщение отдельно
IcyWind
8 / 8 / 2
Регистрация: 19.09.2011
Сообщений: 272
12.04.2013, 15:06  [ТС]
Сначала загорелся желанием дизасемблировать...но потом понял, что это надолго...опыта то у меня нет совсем. Поэтому забил. Могу только поделиться впечатлениями. Падение производительности действительно происходит не из-за функции. Но она каким-то образом косвено влияет (в сочетании с openMP). Теперь поясню:
1.)берём код - кидаем в main() - производительность 3.7 Gflops на одном потоке, 6.8 Gflops на двух.
2.)копируем код в инлайн функцию(), передаём туда матрицы через указатели - ну как в коде. Производительность 2 Gflops на одном потоке, 4Gflops на двух.
3.)убираем слово инлайн - аналогично пункту 2
4.)убираем все упоминания об OpenMp в функции - производительность возвращается на уровень 3.7Gflops
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru