Size: a a a

2021 October 09

Dv

Dr. Friedrich von Ne... in codingteam
Ого!
источник

EE

Ender Eyre in codingteam
Там вон выяснилось, что если ты будешь сравнивать с результатом функции, то МСВЦ каждый раз будет эту функцию вызвать.
источник

EE

Ender Eyre in codingteam
Ну, по крайней мере 13й
источник

t

ttldtor in codingteam
кажется, разницы особой нет https://godbolt.org/z/1oYGd8sqT
источник

t

ttldtor in codingteam
если говорить про оптимизации. Хотя, можно усложнить, да
источник

t

ttldtor in codingteam
надо два фора?
источник

t

ttldtor in codingteam
источник

t

ttldtor in codingteam
источник

t

ttldtor in codingteam
а вот у гцц хуже с этим дела
источник

t

ttldtor in codingteam
источник

t

ttldtor in codingteam
хотя, асмовыхлоп выглядит одинаковым у гцц для двух случаев
источник

t

ttldtor in codingteam
6.85%  movdqu (%rax),%xmm2
0.73%  add    $0x10,%rax
      paddd  %xmm2,%xmm0
82.44% cmp    %rax,%rbx
0.03%  jne    40a3f0 <F2(benchmark::State&)+0xc0>
      movdqa %xmm0,%xmm1
      psrldq $0x8,%xmm1
1.82%  paddd  %xmm1,%xmm0
2.07%  movdqa %xmm0,%xmm1
      psrldq $0x4,%xmm1
2.18%  paddd  %xmm1,%xmm0
1.77%  movd   %xmm0,%eax
2.12%  sub    $0x1,%rbp
      jne    40a3e8 <F2(benchmark::State&)+0xb8>
      jmp    40a3b2 <F2(benchmark::State&)+0x82>
источник

t

ttldtor in codingteam
при этом, у шланга асмовыхлоп побольше https://gist.github.com/ttldtor/77dd05712c6d0e0d0dffde429610f11d
источник

t

ttldtor in codingteam
а, у gcc на cmp много времени тратится
источник

t

ttldtor in codingteam
у clang такого нет
источник

t

ttldtor in codingteam
вот бы ещё сравнивалку конопляторов заиметь
источник

t

ttldtor in codingteam
надо свою писать
источник

EE

Ender Eyre in codingteam
источник

FO

FORTRAN ONE LOVE in codingteam
Утро он мне не говорит
источник

Dv

Dr. Friedrich von Ne... in codingteam
Я тоже тебе не говорю.
источник