Вопросы по теме 'microbenchmark'
JMH: доступ к BenchmarkParams из метода @Setup класса @State
Можно ли получить доступ к BenchmarkParams в @Setup класса @State(Scope.Benchmark) , если этот класс передан в параметр @Benchmark as?
Пример минимального кода (фактическое использование более сложное, но это воспроизводит мою проблему):...
3908 просмотров
schedule
30.10.2021
Почему итерация std :: array выполняется намного быстрее, чем итерация std :: vector?
Примечание редактора: Последующий вопрос с включенной оптимизацией, которая учитывает только цикл : Почему итерация через` std :: vector` быстрее, чем итерация через `std :: array`? где мы можем увидеть эффект сбои страницы ленивого выделения...
225 просмотров
schedule
11.09.2021
Можно ли запустить суппорт с помощью команды IntelliJ «запустить» внутри основного?
Я новичок в суппорте и хочу знать, могу ли я создать основной метод, а затем щелкнуть правой кнопкой мыши и выбрать «запустить», используя IntelliJ?
public class Benchmark1 extends Benchmark{
@Param({"10", "100", "1000", "10000"}) private int...
975 просмотров
schedule
02.04.2022
Как минимизировать затраты на выделение и инициализацию NSDateFormatter?
Я заметил, что использование NSDateFormatter может быть довольно дорогостоящим. Я понял, что выделение и инициализация объекта уже занимает много времени. Кроме того, кажется, что использование NSDateFormatter в нескольких потоках увеличивает...
5705 просмотров
schedule
11.05.2022
Эффективное преобразование в векторы в R
Может ли кто-нибудь помочь мне сделать этот код R более эффективным?
Я пытаюсь написать функцию, которая изменяет список строк на вектор строк или список чисел на вектор чисел, списков типизированных элементов на векторы определенного типа в целом....
2471 просмотров
schedule
24.05.2022
Измерьте время, необходимое для выполнения функции сборки
У меня есть следующая программа сборки, и в качестве своего рода теста я хотел бы посмотреть, как работает функция 1B-приращения. Как наиболее точно рассчитать это время?
SYS_EXIT = 60
LOOP_MAX = 1000000000
.globl _start
loop:
# do a billion...
36 просмотров
schedule
20.05.2022
Как правильно измерить скорость загрузки/чтения RDS в R?
Я думал об эффективном чтении данных в R и попробовал несколько способов проверить, быстрее ли load('file.Rdata') или readRDS('file.rds') . Файлы file.Rdata и file.rds содержат одни и те же данные, первый создан с помощью save(d,...
1120 просмотров
schedule
07.06.2022
Почему (a * b! = 0) быстрее, чем (a! = 0 && b! = 0) в Java?
Я пишу код на Java, где в какой-то момент поток программы определяется тем, являются ли две переменные int, a и b, отличными от нуля (примечание: a и b никогда не являются отрицательными, и никогда в пределах целочисленного переполнения диапазон)....
23135 просмотров
schedule
22.06.2022
Почему CPUID + RDTSC ненадежны?
Я пытаюсь профилировать код для времени выполнения на процессоре x86-64. Я имею в виду этот технический документ Intel, а также просмотрены другие потоки SO, в которых обсуждается тема использования RDTSCP и CPUID+RDTSC здесь и здесь .
В...
515 просмотров
schedule
18.06.2022
Микротест, сравнивающий изменяемые и неизменяемые коллекции Scala с коллекциями java.util.concurrent.*
Существуют ли какие-либо опубликованные микротесты, которые сравнивают изменяемые и неизменяемые коллекции Scala друг с другом и коллекциями в java.util.concurrent в многопоточных средах? Меня особенно интересуют случаи, когда читателей намного...
1142 просмотров
schedule
04.07.2022
Почему оператор сравнительного мода (%) часто показывает 0 затраченного времени, даже для 5000 раундов?
Я хочу получить представление о том, как быстро работает оператор модуля ( % ). Я установил простую программу для оценки % применения к случайно сгенерированным значениям. Время измеряется в наносекундах часами с высоким разрешением. Часто он...
83 просмотров
schedule
03.07.2022
Почему два последовательных вызова одного и того же метода дают разное время выполнения?
Вот пример кода:
public class TestIO{
public static void main(String[] str){
TestIO t = new TestIO();
t.fOne();
t.fTwo();
t.fOne();
t.fTwo();
}
public void fOne(){
long t1, t2;
t1 = System.nanoTime();
int i = 10;...
1804 просмотров
schedule
21.07.2022
Как дрожание JVM может быть вызвано циклом for без выделения объектов?
Я провел микротестирование следующего кода и заметил кое-что интересное, на что я надеюсь, кто-нибудь сможет пролить больше света. Это приводит к ситуации, когда кажется, что цикл for может продолжать работать быстро, блокируя другие потоки в JVM....
1018 просмотров
schedule
21.07.2022
Почему python timeit использует «лучшее из 3» для измерения прошедшего времени?
Я не вижу причин, по которым модуль timeit Python измеряет время, используя функцию best of 3 . Вот пример из моей консоли:
~ python -m timeit 'sum(range(10000))'
10000 loops, best of 3: 119 usec per loop
Интуитивно я бы сложил все время...
2827 просмотров
schedule
30.07.2022
Почему этот пример с добавлением массива SIMD может не демонстрировать никакого прироста производительности по сравнению с простой реализацией?
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Vector.IsHardwareAccelerated ? "SIMD supported" : "SIMD not supported.");
var rand = new Random();
var numNums = 10000000;
var arr1 =...
206 просмотров
schedule
07.08.2022
Что случилось с поведением rdtscp наполовину?
В течение многих лет процессоры x86 поддерживали инструкцию rdtsc , которая считывает «счетчик отметок времени» текущего процессора. Точное определение этого счетчика со временем изменилось, но на последних процессорах это счетчик, который...
295 просмотров
schedule
10.08.2022
в чем проблема с использованием пошагового доступа к потоку для измерения пиковой пропускной способности памяти
В качестве примера возьмем Skylake, его строка кэша составляет 64 байта.
Я попытался написать простую программу, чтобы узнать, какую максимальную пропускную способность памяти я могу потреблять. В приведенном ниже коде я намеренно сделал шаг 64...
51 просмотров
schedule
07.08.2022
R microbenchmark: как передать один и тот же аргумент оцениваемым функциям?
Я хотел бы оценить время извлечения данных из растрового временного ряда с использованием различных типов файлов (геотиф, двоичный файл) или объектов (RasterBrick, RasterStack). Я создал функцию, которая будет извлекать временные ряды из случайной...
331 просмотров
schedule
12.08.2022
функции `микробенчмарка`, созданные фабричной функцией
У меня есть функция, которая создает другую функцию в соответствии с некоторыми конкретными параметрами:
factory <- function(param) {
# some long computation…
cached.matrix = rnorm(param)
# return function that uses cached data...
83 просмотров
schedule
04.09.2022
Автоматизация команды подмножества в R
данный скрипт подмножает данные радужной оболочки в R на основе заданного условия. Однако, когда то же самое применяется к очень большим данным, скажем, к 10 миллионам+, решение теряет смысл. Пожалуйста, помогите мне с более быстрым способом...
248 просмотров
schedule
08.09.2022