Re: [vpp-dev] memory layout effects on VPP performance?

2022-02-23 Thread Benoit Ganne (bganne) via lists.fd.io
Hi Vratko,

> When I was running tests for this [0] revert,
> I saw different performance consequences than expected

Hmm but [0] looks bogus to me anyway: if I'm not wrong, this prefetches the 
vlib_buffer pointer array instead of the vlib_buffer headers pointed to by the 
array.
I think the correct patch should be https://gerrit.fd.io/r/c/vpp/+/35419

> What do you think, is it possible that also for VPP,> 
> some regressions are caused just by compiler changing the memory layout
> (without any "real" change in the program logic)?

This can definitely happen, I have seen this several time myself.

> If yes, should we try to apply Stabilizer to VPP?

I wouldn't go there: looks like an interesting but unmaintained research 
project. Last real commits are 9yr old and they mentioned LLVM 3.1.
You're not going to compile VPP with that.
If you feel like tackling it, I'd look into techniques for reproducible builds 
that could help by using same libraries and compilers versions, but in my 
experience it has been mostly frustrating to try to control what the compiler 
do to avoid this kind of issue.

Best
ben

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20892): https://lists.fd.io/g/vpp-dev/message/20892
Mute This Topic: https://lists.fd.io/mt/89321880/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[vpp-dev] memory layout effects on VPP performance?

2022-02-22 Thread Vratko Polak -X (vrpolak - PANTHEON TECHNOLOGIES at Cisco) via lists.fd.io

When I was running tests for this [0] revert,
I saw different performance consequences than expected
(not reversal of the original [1] regression).
After rebasing, I am seeing yet another set of unexpected performance 
differences.

This has reminded me of Stabilizer [2] utility,
I learned about it by watching this [3] video.

What do you think, is it possible that also for VPP,
some regressions are caused just by compiler changing the memory layout
(without any "real" change in the program logic)?
If yes, should we try to apply Stabilizer to VPP?

(Re [0], I am leaning towards giving up on it.)

Vratko.

[0] https://gerrit.fd.io/r/c/vpp/+/35164
[1] 
https://gerrit.fd.io/r/c/vpp/+/34568/2#message-63e1cdafce46e7d389ffb45d79df4fb622681888
[2] https://github.com/ccurtsinger/stabilizer
[3] https://www.youtube.com/watch?v=r-TLSBdHe1A

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20889): https://lists.fd.io/g/vpp-dev/message/20889
Mute This Topic: https://lists.fd.io/mt/89321880/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-