Вопросы с тегом 'optimization'

Оптимизация - это совершенствование метода или дизайна. В программировании оптимизация обычно принимает форму увеличения скорости алгоритма или сокращения требуемых ресурсов. Другим значением оптимизации являются численные алгоритмы оптимизации, используемые в машинных процессах.
7
ответов

Sql: как правильно проверить, существует ли запись

Чтение некоторой документации по SQL Tuning Я нашел это: Select count(*): - подсчитывает количество строк - Часто неправильно используется для проверки существования записи Является ли Select count(*) действительно так плохо? Каков правильный с...
задан 23 нояб. '10 в 11:15
3
ответов

Почему простой цикл оптимизирован, когда предел равен 959, но не 960?

Рассмотрим этот простой цикл: float f(float x[]) { float p = 1.0; for (int i = 0; i < 959; i++) p += 1; return p; } Если вы скомпилируете gcc 7 (snapshot) или clang (trunk) с помощью -march=core-avx2 -Ofast, вы получите что-то очень...
задан 10 февр. '17 в 15:30
5
ответов

Какие, если есть, компиляторы С++ выполняют оптимизацию хвостовой рекурсии?

Мне кажется, что было бы прекрасно работать с оптимизацией хвостовой рекурсии как на C, так и на С++, но во время отладки я никогда не вижу стека кадров, который указывает на эту оптимизацию. Это хорошо, потому что стек говорит мне, насколько глубока...
задан 29 авг. '08 в 10:35
6
ответов

Почему Java API использует int вместо короткого или байтового?

Почему Java API использует int, когда short или даже byte будет достаточно? Пример: DAY_OF_WEEK поле в классе Calendar использует int. Если разница слишком минимальна, то почему эти типы данных (short, int) существуют вообще?
задан 25 нояб. '14 в 12:11
6
ответов

Почему оператор buov (<<) предпочитает над плюсом-равными (+ =) при построении строки в Ruby?

Я работаю через Ruby Koans. test_the_shovel_operator_modifies_the_original_string Koan в about_strings.rb содержит следующий комментарий: Программисты Ruby, как правило, предпочитают оператора лопаты (<) по сравнению с плюсом equally operato...
задан 13 янв. '11 в 22:40
15
ответов

Округление до следующей мощности 2

Я хочу написать функцию, которая возвращает ближайшую следующую мощность 2 числа. Например, если мой вход равен 789, выход должен быть 1024. Есть ли способ достижения этого без использования каких-либо циклов, но просто с использованием некоторых поб...
задан 21 янв. '09 в 20:26
14
ответов

Эффективность отражения Java

Создает ли объект, используя отражение, а не вызывает конструктор класса, приводит к существенным различиям в производительности?
задан 12 янв. '09 в 17:25
12
ответов

Почему Magento так медленно?

Является ли Magento обычно настолько ужасно медленным? Это мой первый опыт работы с ним, и панель администратора просто требует времени для загрузки и сохранения изменений. Это стандартная установка с тестовыми данными. Сервер, на котором он размещ...
задан 28 окт. '09 в 21:32
2
ответов

Почему Clang оптимизирует х * 1,0, но НЕ x + 0.0?

Почему Clang оптимизирует цикл в этом коде #include <time.h> #include <stdio.h> static size_t const N = 1 << 27; static double arr[N] = { /* initialize to zero */ }; int main() { clock_t const start = clock(); for (int i ...
задан 22 окт. '15 в 6:38
14
ответов

Быстро найти, присутствует ли значение в массиве C?

У меня есть встроенное приложение с критическим по времени ISR, которому необходимо выполнить итерацию через массив размером 256 (желательно 1024, но 256 - минимальный) и проверить, соответствует ли значение содержимому массива. A bool будет установ...
задан 04 сент. '14 в 12:31
9
ответов

Функция Coalesce для PHP?

Многие языки программирования имеют функцию коалесценции (возвращает первое значение, отличное от NULL, пример). PHP, к сожалению, не делает. Что было бы хорошим способом реализовать его в PHP?
задан 18 июня '09 в 18:49
8
ответов

Лучше ли использовать std:: memcpy() или std:: copy() в терминах производительности?

Лучше ли использовать memcpy, как показано ниже, или лучше использовать std::copy() в терминах производительности? Почему? char *bits = NULL; ... bits = new (std::nothrow) char[((int *) copyMe->bits)[0]]; if (bits == NULL) { cout << "...
задан 16 янв. '11 в 20:55
14
ответов

Оптимизация приложения для Android до выпуска

Я в "особой" ситуации о эффективности моей программы. Теперь я нахожусь на этапе, когда мне нужно улучшить производительность приложения и сократить потребление батареи. Перед вопросом: Сначала, моя работа с приложениями. Он работает нормально ...
задан 11 апр. '11 в 23:10
11
ответов

Действительно ли опечатанные классы действительно предлагают преимущества?

Я столкнулся с множеством советов по оптимизации, которые говорят, что вы должны маркировать свои классы как запечатанные, чтобы получить дополнительные преимущества в производительности. Я проверил несколько тестов, чтобы проверить разницу в произв...
задан 05 авг. '08 в 15:00
3
ответов

Почему компиляторы С++ не оптимизируют это условное логическое назначение как безусловное присваивание?

Рассмотрим следующую функцию: void func(bool& flag) { if(!flag) flag=true; } Мне кажется, что если флаг имеет допустимое логическое значение, это будет равносильно безусловному его установке на true, например: void func(bool& flag) {...
задан 28 окт. '16 в 13:29