0
ответов

Сокращенные операторы и хвостовая рекурсия

Допустим, у меня есть простая функция вроде этой: int all_true (int * bools, int len) {if (len <1) return TRUE; return * bools && all_true (bools + 1, len-1); } Эта функция может быть ...
вопрос задан: 15 December 2011 04:08
0
ответов

Когда использовать volatile для противодействия оптимизации компилятора в C #

Я потратил много недель на многопоточное кодирование на C # 4.0. Однако есть один вопрос, на который у меня нет ответа. Я понимаю, что ключевое слово volatile предотвращает ...
вопрос задан: 7 December 2011 12:02
0
ответов

Что делает флаг компилятора scala «optimize»?

Я пытался использовать скалак -optimise с версией 2.7.7. В то время я никогда не улучшал производительность, но компиляция заняла больше времени. В Scala 2.9.0 ситуация лучше? Какие ...
вопрос задан: 27 November 2011 15:22
0
ответов

Почему компилятор C++ не устраняет проверку нуля указателя, возвращаемого new?

Недавно я выполнил следующий код на ideone.com (gcc-4.3.4) #include #include #include #include using namespace std; void* operator new(...
вопрос задан: 21 November 2011 14:34
0
ответов

Эффективность преждевременного возврата в функции

Это ситуация, с которой я часто сталкиваюсь как неопытный программист и особенно интересуюсь амбициозной скорости - мой интенсивный проект, который я пытаюсь оптимизировать. Для основного C -...
вопрос задан: 28 October 2011 18:42
0
ответов

Intel icc: как сбросить оптимизированный код в файл C

Опция Gcc -fdump-tree-optimized сбрасывает оптимизированную версию вашего кода C в файл C. Есть ли способ сделать то же самое с помощью компилятора intel icc? У меня есть код матричного умножения, который я ...
вопрос задан: 25 October 2011 22:49
0
ответов

JIT-оптимизация Hotspot

В лекции о JIT в Hotspot я хочу привести как можно больше примеров конкретных оптимизаций, которые JIT выполняет. Я знаю только о «встраивании методов», но должно быть гораздо больше. ...
вопрос задан: 21 October 2011 20:17
0
ответов

Влияет ли оптимизация на основе профиля, выполняемая компилятором, на случаи, не охваченные набором данных профилирования?

Этот вопрос не относится к C ++, AFAIK определенные среды выполнения, такие как Java RE, могут выполнять профилирование управляемая оптимизация на лету, меня это тоже интересует.MSDN описывает PGO следующим образом: Я использую свои ...
вопрос задан: 20 October 2011 10:50
0
ответов

Как оптимизирующие компиляторы решают, когда и сколько развернуть цикл?

Когда компилятор выполняет оптимизацию развертывания цикла, как он определяет, по какому фактору развернуть цикл или нужно ли развернуть весь цикл? Поскольку это компромисс между пространством и производительностью, на ...
вопрос задан: 7 October 2011 20:47
0
ответов

Разрешенная оптимизация компилятора C # для локальных переменных и извлечение значения из памяти

РЕДАКТИРОВАТЬ: Я спрашиваю, что происходит, когда два потока одновременно обращаются к одним и тем же данным без надлежащего синхронизация (до этой правки этот момент не был четко выражен). У меня вопрос о ...
вопрос задан: 7 October 2011 11:47
0
ответов

Как я могу отклонить вызов, если во время компиляции известно граничное условие?

У меня следующая ситуация: существует огромный набор шаблонов, таких как std :: vector, которые будут вызывать memmove () для перемещения частей массива . Иногда они захотят «переместить» части нулевой длины - например, ...
вопрос задан: 5 October 2011 21:19
0
ответов

Могут ли оптимизации компилятора, такие как ghc -O2, изменить порядок (время или память) программы?

У меня такое ощущение, что ответ положительный, и это не ограничивается Haskell. Например, оптимизация хвостового вызова изменяет требования к памяти с O (n) на O (l), верно? Моя точная проблема: в ...
вопрос задан: 3 October 2011 13:42
0
ответов

Получение отчета об оптимизации из GCC

Я хотел бы знать, есть ли опция, которую я могу использовать с GCC, чтобы получить подробный отчет об оптимизации, фактически выбранной и выполненной компилятором. Это возможно с компилятором Intel C ...
вопрос задан: 28 September 2011 14:20
0
ответов

Короткое замыкание логических операндов без побочных эффектов

За вознаграждение: как можно отключить это поведение в каждом конкретном случае без отключения или снижения уровня оптимизации? Следующее условное выражение было скомпилировано на MinGW GCC 3.4 ....
вопрос задан: 27 September 2011 02:29
0
ответов

Доступен ли доступ к изменчивым локальным переменным извне из наблюдаемого поведения функции в C ++?

В C ++ 03 стандартное наблюдаемое поведение (1.9 / 6) включает чтение и запись изменчивых данных. Теперь у меня есть такой код: int main () {const volatile int value = 0; if (value) {} return 0; } ...
вопрос задан: 26 September 2011 09:18
0
ответов

Есть ли хороший тест для компиляторов C ++, оптимизирующих?

Я оцениваю Visual C ++ 10 оптимизирующего компилятора на тривиальных образцах кода, так что см. Насколько хорошим аппаратным кодом испускается, и у меня нет творческих усадок. Есть ли определенный образец кодовой базы ...
вопрос задан: 12 September 2011 10:33
0
ответов

Явно бесконечные петли обрабатываются в .Net в качестве особого случая?

Ранее сегодня, как я кодировал метод, и он ударил меня, что я не был уверен, что именно идиома я реализовал компилирование. Если все остальное абстрагировано, он будет выглядеть что-то вроде этого: ...
вопрос задан: 6 September 2011 16:44
0
ответов

Будет ли возможность объявлять функции Lisp «чистыми» быть полезными?

Я много читал о Haskell в последнее время, и преимущества, которые оно происходит от чисто функционального языка. (Я не заинтересован в обсуждении монадских для Lisp), это имеет смысл для меня (...
вопрос задан: 31 August 2011 18:01
0
ответов

Оптимизирует ли Python вызовы функций из циклов?

Скажем, у меня есть код, который вызывает некоторую функцию за миллионы раз из цикла, и я хочу, чтобы код был быстрым: def outer_function (file): for line in file: inner_function ( line) def inner_function (...
вопрос задан: 30 August 2011 12:54
0
ответов

Когда компилятор оптимизирует мой код

Я пытаюсь создать пример кода, показывающий оптимизацию кода компилятором при умножении на число степени 2. Тем не менее, когда я включаю оптимизацию кода, IL остается в основном тем же. Любой ...
вопрос задан: 29 August 2011 17:07
0
ответов

Сколько времени занимает вызов пустой функции?

У меня есть список элементов, реализующих интерфейс. Для вопроса воспользуемся следующим примером интерфейса: interface Person { void AgeAYear(); } Существует два класса класса NormalPerson : Person { ...
вопрос задан: 25 August 2011 13:49
0
ответов

Оптимизация компилятора заставляет программу работать медленнее

У меня есть следующий фрагмент кода, который я написал на C. Он довольно прост, поскольку он просто сдвигает биты x для каждого цикла for. int main () {int x = 1; for (int i = 0; i> -2; i ++) {x & ...
вопрос задан: 19 August 2011 15:41
0
ответов

LTO, девиртуализация и виртуальные таблицы

Сравнивая виртуальные функции в C ++ и виртуальные таблицы в C, делают ли компиляторы в целом (и для достаточно больших проектов) столь же хорошую работу по девиртуализации? Наивно, это похоже на виртуальную ...
вопрос задан: 13 August 2011 17:24
0
ответов

LLVM и будущее оптимизации

Я понимаю, что LLVM предстоит долгий путь, но теоретически можно оптимизировать, которые есть в GCC / ICC / и т. д. для отдельных языков применяется к байтовому коду LLVM? Если да, то означает ли это, что любой ...
вопрос задан: 12 July 2011 22:32
0
ответов

Правильная сборка sqlite для окон

Моя проблема в том, как я строю sqlite - мой двоичный файл работает намного медленнее, чем предварительно скомпилированный на странице загрузки sqlite (примерно 3-6 раз в зависимости от запрос). Я использую sqlite3.h и sqlite3.c ...
вопрос задан: 28 June 2011 20:27
0
ответов

Степень оптимизации GHC

Я не очень хорошо знаком с тем, насколько Haskell / GHC может оптимизировать код. Ниже у меня есть довольно "грубая сила" (в декларативном смысле) реализация задачи n ферзей. Я знаю, что это может быть ...
вопрос задан: 24 June 2011 19:20
0
ответов

Какие оптимизации поддерживает AVM2?

Интересно, какие оптимизации поддерживает AVM2 (ActionScript 3 VM)? Я знаю, что он использует JIT, но поддерживает ли он удаление мертвого кода, сворачивание констант, встраивание и т. Д. Также мне это очень интересно ...
вопрос задан: 9 June 2011 10:14
0
ответов

Как сделать CAF не CAF в Haskell?

Как сделать постоянный аппликативный вариант Сформировать, ну, а не постоянную заявочную форму, чтобы она не сохранялась на протяжении всего срока действия программы? Я пробовал такой подход: - | Фиктивный параметр для ...
вопрос задан: 22 May 2011 21:34
0
ответов

Visual C++ Compiler Optimization Flags: Difference Between /O2 and /Ot

What's the difference between the /Ot flag ("favor fast code") and the /O2 flag ("maximize speed")? (Ditto with /Os and /O1.)
вопрос задан: 15 May 2011 08:59
0
ответов

Сложение по сравнению с производительностью операции ИЛИ

Я видел, как люди использовали сложение там, где побитовое ИЛИ было бы более подходящим концептуально, потому что они считают, что это быстрее. Это правда? Если да, все ли современные компиляторы знают этот трюк?
вопрос задан: 4 April 2011 08:36