Вопросы с тегом 'optimization'
Оптимизация - это совершенствование метода или дизайна. В программировании оптимизация обычно принимает форму увеличения скорости алгоритма или сокращения требуемых ресурсов. Другим значением оптимизации являются численные алгоритмы оптимизации, используемые в машинных процессах.
30
Почему обработка отсортированного массива быстрее, чем обработка несортированного массива?
Вот фрагмент кода C++, который демонстрирует очень специфическое поведение. По какой-то странной причине сортировка данных чудесным образом делает код почти в шесть раз быстрее:
#include <algorithm>
#include <ctime>
#include <iostream...
27 июн. '12 в 13:51
57
Какое значение "href" следует использовать для ссылок на JavaScript, "#" или "javascript: void (0)"?
Ниже приведены два метода построения ссылки, которая имеет единственную цель запуска JavaScript-кода. Что лучше, с точки зрения функциональности, скорости загрузки страницы, целей проверки и т.д.?
function myJsFunc() {
alert("myJsFunc");
}
&l...
25 сент. '08 в 17:54
11
Улучшить производительность SQLite в секунду в секунду?
Оптимизировать SQLite сложно. Массовая вставка приложения C может варьироваться от 85 вставок в секунду до более 96 000 вставок в секунду!
Справочная информация: Мы используем SQLite как часть настольного приложения. У нас есть большие объемы данных...
10 нояб. '09 в 22:16
35
Самый быстрый способ определить, является ли целочисленный квадратный корень целым числом
Я ищу самый быстрый способ определить, является ли long значение идеальным квадратом (то есть его квадратный корень является другим целым числом): Я сделал это простым способом, используя встроенную Math.sqrt(), но мне интересно, есть ли способ сде...
17 нояб. '08 в 13:43
10
Замена 32-битного счетчика циклов на 64-битные значения приводит к сумасшедшим отклонениям производительности
Я искал самый быстрый способ для больших массивов данных popcount. Я столкнулся с очень странным эффектом: изменение переменной цикла от unsigned до uint64_t привело к снижению производительности на 50% на моем ПК.
Контрольный показатель
#include...
01 авг. '14 в 10:33
24
Big O, как вы его вычисляете/приближаете?
Большинство людей со степенью в CS наверняка знают, что Big O означает.
Это помогает нам измерить, насколько эффективен алгоритм, и если вы знаете в в какой категории проблема, которую вы пытаетесь решить, лежит в вас может выяснить, сможет ли еще вы...
06 авг. '08 в 10:18
11
Почему этот код на С++ быстрее, чем моя рукописная сборка для тестирования гипотезы Collatz?
Я написал эти два решения для Project Euler Q14 в сборке и на С++. Они представляют собой одинаковый подход грубой силы для тестирования гипотезы Collatz. Сборочный раствор был собран с помощью
nasm -felf64 p14.asm && gcc p14.o -o p14
C++ ...
01 нояб. '16 в 6:12
34
Стратегии оптимизации производительности в последней инстанции
На этом сайте уже много вопросов о производительности, но мне кажется, что почти все они очень проблемны и довольно узки. И почти все повторяют советы, чтобы избежать преждевременной оптимизации.
Предположим:
код уже работает правильно
выбранные ...
29 мая '09 в 14:26
4
Как достичь теоретического максимума 4 FLOP за цикл?
Как достичь теоретической пиковой производительности 4 операций с плавающей запятой (двойной точности) за такт на современном процессоре Intel x86-64? Насколько я понимаю, это займет три цикла для SSE add и пять циклов для mul, чтобы закончить на б...
05 дек. '11 в 17:54
13
Получение всех типов, реализующих интерфейс
Используя отражение, как я могу получить все типы, которые реализуют интерфейс с С# 3.0/.NET 3.5 с наименьшим кодом и минимизацию итераций?
Вот что я хочу переписать:
foreach (Type t in this.GetType().Assembly.GetTypes())
if (t is IMyInterface)...
25 авг. '08 в 19:57
27
Каков наиболее эффективный способ для плавающего и двойного сравнения?
Каким будет наиболее эффективный способ сравнить два значения double или два float?
Просто это неправильно:
bool CompareDoubles1 (double A, double B)
{
return A == B;
}
Но что-то вроде:
bool CompareDoubles2 (double A, double B)
{
diff = ...
20 авг. '08 в 2:09
14
Существует ли a разница в производительности между i++ и ++i в C?
Существует ли разница в производительности между i++ и ++i если результирующее значение не используется?
24 авг. '08 в 6:48
43
Сгладить нерегулярный список списков
Да, я знаю, что этот вопрос был рассмотрен ранее (здесь, здесь, здесь, здесь), но, насколько я знаю, все решения, за исключением одного, выходят из списка следующим образом:
L = [[[1, 2, 3], [4, 5]], 6]
Если желаемый результат
[1, 2, 3, 4, 5, 6]
...
28 янв. '10 в 22:15
35
Каков самый "питонический" способ перебора списка в кусках?
У меня есть Python script, который принимает в качестве входного списка целые числа, которые мне нужно работать с четырьмя целыми за раз. К сожалению, у меня нет контроля над входом, иначе я бы прошел в виде списка четырехэлементных кортежей. В наст...
12 янв. '09 в 2:48
23
Какой вариант лучше использовать для деления целочисленного числа на 2?
Какой из следующих методов является наилучшим вариантом для деления целого на 2 и почему?
Техника 1:
x = x >> 1;
Техника 2:
x = x / 2;
Здесь x - целое число.
21 мая '12 в 7:54