Вопросы по теме 'micro-optimization'

Накладные расходы для MySQL SELECTS — лучше использовать один или несколько последовательно
Есть ли заметная разница в производительности между одним запросом SELECT foo, bar, FROM users , который возвращает 500 строк, и 500 запросами SELECT foo, bar, FROM users WHERE id = x , поступающими одновременно? В PHP-приложении, которое я пишу,...
1730 просмотров

Какие есть микрооптимизации в C? Есть ли кто-нибудь действительно полезный?
Я понимаю большинство существующих микрооптимизаций, но действительно ли они полезны? Exempli gratia: действительно ли выполнение ++i вместо i++ , while(1) или for(;;) приводит к повышению производительности (по отпечаткам памяти или циклам...
1384 просмотров
schedule 09.05.2022

Как получить lg2 числа, равного 2^k
Какое лучшее решение для получения логарифма по основанию 2 числа, которое, как я знаю, является степенью двойки ( 2^k ). (Конечно, я знаю только значение 2^k , а не само k .) Один из способов, который я придумал, - это вычесть 1, а затем...
706 просмотров

Стоимость обработчиков исключений в Python
В другом вопросе в принятом ответе предлагается заменить (очень дешево) if в коде Python с блоком try / except для повышения производительности. Если оставить в стороне проблемы со стилем кодирования, и если предположить, что исключение никогда...
45459 просмотров

Java: микрооптимизация управления массивами
Я пытаюсь создать порт Java для простой нейронной сети с прямой связью. Это, очевидно, требует большого количества числовых вычислений, поэтому я пытаюсь максимально оптимизировать свой центральный цикл. Результаты должны быть правильными в пределах...
2410 просмотров

MIPS (любопытство) более быстрый способ очистки реестра?
Каков самый быстрый способ очистки регистра (=0) в сборке MIPS? Некоторые примеры: xor $t0, $t0, $t0 and $t0, $t0, $0 move $t0, $0 li $t0, 0 add $t0, $0, $0 Какой самый эффективный?
22189 просмотров

Почему DateTime.Now DateTime.UtcNow такой медленный/дорогой
Я понимаю, что это слишком далеко в области микрооптимизации, но мне любопытно понять, почему вызовы DateTime.Now и DateTime.UtcNow такие "дорогие". У меня есть пример программы, которая запускает несколько сценариев выполнения некоторой «работы»...
14362 просмотров
schedule 11.07.2023

Деление с плавающей запятой против умножения с плавающей запятой
Есть ли (без микрооптимизации) прирост производительности за счет кодирования? float f1 = 200f / 2 по сравнению с float f2 = 200f * 0.5 Несколько лет назад мой профессор сказал мне, что деление с плавающей запятой происходит...
71147 просмотров
schedule 08.04.2022

производительность IDictionary‹Type, object› по сравнению с общим свойством Type
изменить : я основал этот вопрос на ложном предположении, что поиск экземпляров универсального типа, который я выполнял, будет выполнять ту же работу, что и при выполнении для универсальных типов, созданных во время выполнения. Те, что есть в моей...
423 просмотров

Есть ли накладные расходы на производительность частного внутреннего класса в Java?
Когда у меня есть внутренние классы с частными методами или полями, компилятор должен создать синтетические методы доступа, защищенные пакетом, чтобы внешний класс мог получить доступ к этим частным элементам (и наоборот). Чтобы этого избежать, я...
8642 просмотров

Почему swap не использует операцию Xor в C++
Я узнал, что операцию Xor можно использовать для реализации эффективной функции подкачки. нравится: template<class T> void swap(T& a, T& b) { a = a^b; b = a^b; a = a^b; } Но реализация свопа, которую я нашел в...
4090 просмотров

Самый эффективный метод объединения всех букв алфавита в строку
Возможный дубликат: Создание массива букв алфавита на C # (Только теоретический вопрос, просто размышлял об этом как о написании системы фильтрации (не с использованием алфавита, но заставил меня задуматься)). Допустим, я хочу...
5441 просмотров
schedule 21.07.2023

Может ли доступ к неинициализированным значениям привести к снижению производительности?
Я оптимизирую матричную числовую точку доступа. В настоящее время я занимаюсь блокировкой и развертыванием цикла для повышения производительности. Однако я намеренно избегаю стирания границ. Вместо этого я позволяю шагам блокировки...
199 просмотров

C # / XNA - Оптимизация столкновений ограничивающих кругов (микро)?
Я работал над простым космическим шутером и дошел до того момента в проекте, когда мой ужасно написанный код действительно замедляет работу. После запуска EQATEC я вижу, что большая часть проблемы заключается в неприглядной проверке всего на всем при...
699 просмотров
schedule 24.03.2023

Затраты памяти на классы Case в scala
Каковы накладные расходы памяти класса case в scala? Я реализовал некоторый код для хранения лексикона с несколькими типами интернированных токенов для обработки NLP. У меня есть класс case для каждого типа токена. Например, канонический токен...
2080 просмотров

Десятичная конкатенация двух целых чисел с использованием битовых операций
Я хочу объединить два целых числа, используя только битовые операции, так как мне нужна максимальная эффективность. Доступны различные ответы, но они недостаточно быстры. Я хочу, чтобы реализация использовала только битовые операции, такие как сдвиг...
1509 просмотров

Дополнение до двух длинных целых чисел
Я хочу выполнить длинную целочисленную математику (128 бит) с помощью Intel I64 Assembler, и мне нужно создать дополнение до 2. Допустим, моя положительная ценность выражена в RDX: RAX. Дополнение до 2 выполняется «перевернуть биты и добавить 1»....
1005 просмотров

В Java должен ли объект Integer быть предпочтительнее примитива int (то же самое для других числовых типов)?
Хорошо, поэтому я понимаю, что Integer - это просто класс-оболочка. однако меня беспокоит то, что, избегая использования «оболочки», может возникнуть микрооптимизация времени выполнения при использовании примитивных переменных типа int. Мой вопрос...
1704 просмотров
schedule 07.12.2022

Как может команда rep stosb выполняться быстрее, чем эквивалентный цикл?
Как инструкция rep stosb может выполняться быстрее, чем этот код? Clear: mov byte [edi],AL ; Write the value in AL to memory inc edi ; Bump EDI to next byte in the buffer dec ecx ;...
10148 просмотров

Существует ли конструкция цикла, которая повторяется n раз без вычисления каких-либо условий?
Этот вопрос возник из-за контекста оптимизации кода для устранения потенциальных сбоев прогнозирования ветвлений... фактически, удаления всех ветвей вместе. В моем примере типичный цикл for использует следующий синтаксис: #include...
148 просмотров