Сообщение Re[27]: 2D-Linq и оптимизация цифровых фильтров - 3 от 10.07.2018 0:11
Изменено 10.07.2018 0:14 vdimas
Re[27]: 2D-Linq и оптимизация цифровых фильтров - 3
Здравствуйте, samius, Вы писали:
S>Специально перечитал посты Синклера. Идея сравнения скорости двумерного массива с одномерным — не его.
Его, его. ))
У двумерного массива для доступа к элементу вызываются специальные методы класса-массива.
А в случае одномерного массива компилятор подставляет тупо опкоды со смещением по индексу.
Вот Синклер и подменил одно на другое (в числе прочего).
Эта фишка известна еще с забытых 2003-х годов.
Ну и помимо этого сработал тот мухлёж, что в исходном варианте происходит итерирование по столбцам (!!!), а в "оптимизированном" — как положено, по строкам, т.е. память перебирается последовательно, а не скачками.
Кароч, я так на всё это посмотрел и у меня возник вопрос, который до сих пор без ответа — так что с чем мы сравниваем, ась?
S>Специально перечитал посты Синклера. Идея сравнения скорости двумерного массива с одномерным — не его.
Его, его. ))
У двумерного массива для доступа к элементу вызываются специальные методы класса-массива.
А в случае одномерного массива компилятор подставляет тупо опкоды со смещением по индексу.
Вот Синклер и подменил одно на другое (в числе прочего).
Эта фишка известна еще с забытых 2003-х годов.
Ну и помимо этого сработал тот мухлёж, что в исходном варианте происходит итерирование по столбцам (!!!), а в "оптимизированном" — как положено, по строкам, т.е. память перебирается последовательно, а не скачками.
Кароч, я так на всё это посмотрел и у меня возник вопрос, который до сих пор без ответа — так что с чем мы сравниваем, ась?
Re[27]: 2D-Linq и оптимизация цифровых фильтров - 3
Здравствуйте, samius, Вы писали:
S>Специально перечитал посты Синклера. Идея сравнения скорости двумерного массива с одномерным — не его.
Его, его. ))
У двумерного массива для доступа к элементу вызываются специальные методы класса-массива.
А в случае одномерного массива компилятор подставляет тупо опкоды со смещением по индексу.
Вот Синклер и подменил одно на другое (в числе прочего).
Эта фишка известна еще с забытых 2003-х годов.
S>Специально перечитал посты Синклера. Идея сравнения скорости двумерного массива с одномерным — не его.
Его, его. ))
У двумерного массива для доступа к элементу вызываются специальные методы класса-массива.
А в случае одномерного массива компилятор подставляет тупо опкоды со смещением по индексу.
Вот Синклер и подменил одно на другое (в числе прочего).
Эта фишка известна еще с забытых 2003-х годов.