Size: a a a

2020 April 24

p

polunin.ai in rust_offtopic
Doge Shibu
Ну вот. В подобных случаях компилятор тебе никак не поможет.
еще раз: зачем мне об этом думать пока бенчмарки не показывают плохую производительность?
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
процессор считает что данные последовательно будут у тебя вызываться поэтому загружает в кеш первый массив. А ты говоришь что тебе нужен другой массив в следующей операции.
Весь массив он не загружает, там как раз будет идти кэшлиниями.
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
еще раз: зачем мне об этом думать пока бенчмарки не показывают плохую производительность?
Если ты неправильно сделаешь свои архитектуру не думая об этом, когда дойдёт речь до бенчмарков будет уже поздно.
источник

DS

Doge Shibu in rust_offtopic
Но это верно, если у тебя CPU-bound задачи
источник

e

egoarka in rust_offtopic
Doge Shibu
Если ты неправильно сделаешь свои архитектуру не думая об этом, когда дойдёт речь до бенчмарков будет уже поздно.
источник

e

egoarka in rust_offtopic
считается за оптимизацию?)
источник

AZ

Alex Zhukovsky in rust_offtopic
polunin.ai
еще раз: зачем мне об этом думать пока бенчмарки не показывают плохую производительность?
потому что наступает момент когда они показывают плохую производительность, а ты не знаешь, что делать
источник

e

egoarka in rust_offtopic
egoarka
считается за оптимизацию?)
второй забыл заполнить, но цифры одинаковые
источник

DS

Doge Shibu in rust_offtopic
Тут задача не исправить код, а обьяснить откуда такая разница в перформансе
источник

S

Soul in rust_offtopic
А кто вообще сказал процессору грузить кусок массива в кеш?
источник

e

egoarka in rust_offtopic
Doge Shibu
Тут задача не исправить код, а обьяснить откуда такая разница в перформансе
объясни плиз тогда вот почему работает норм в таком образе и ломает твой пример

https://jsfiddle.net/zkosdrqe/1/
источник

AZ

Alex Zhukovsky in rust_offtopic
но это ответ на вопрос "компилятор догадается" - что он тут где догадается
источник

p

polunin.ai in rust_offtopic
Soul
А кто вообще сказал процессору грузить кусок массива в кеш?
он сам считает что ты будешь данные послежовательно вызывать и загружает кусок памяти в кеш
источник

DF

Dollar Føølish in rust_offtopic
В чем там суть жс задач? Я с телефона
источник

e

egoarka in rust_offtopic
egoarka
объясни плиз тогда вот почему работает норм в таком образе и ломает твой пример

https://jsfiddle.net/zkosdrqe/1/
причем даже unordered быстрее

Ordered array run took 237 msec.
Not ordered array run took 227 msec.
источник

DF

Dollar Føølish in rust_offtopic
Ответ то есть
источник

DS

Doge Shibu in rust_offtopic
egoarka
объясни плиз тогда вот почему работает норм в таком образе и ломает твой пример

https://jsfiddle.net/zkosdrqe/1/
Это как раз и задачка, подумать и понять откуда такой эффект.
источник

e

egoarka in rust_offtopic
Doge Shibu
Это как раз и задачка, подумать и понять откуда такой эффект.
ну я собственно не решил эту задачу одним кликом? не?
источник

DS

Doge Shibu in rust_offtopic
egoarka
ну я собственно не решил эту задачу одним кликом? не?
Нет, задача не исправить код. Задача вообще его не меняя, понять откуда такая разнциа в результатах на тех примерах, что даны.
источник

DF

Dollar Føølish in rust_offtopic
На numa узлах это может быть ещё заметнее, но программистов которые это умеют по пальцам пересчитать
источник