mirror of
https://github.com/status-im/nimbus-eth2.git
synced 2025-01-10 14:26:26 +00:00
78b767f645
* avoid genericAssign for beacon node types ok, I got fed up of this function messing up cpu measurements - it's so ridiculously slow, it's sad. before, while syncing: ``` 40,65% beacon_node_shared_witti_0 [.] genericAssignAux__U5DxFPRpHCCZDKWQzM9adaw 9,02% libc-2.31.so [.] __memmove_avx_unaligned_erms 7,07% beacon_node_shared_witti_0 [.] BIG_384_58_monty 5,19% beacon_node_shared_witti_0 [.] BIG_384_58_mul 2,72% beacon_node_shared_witti_0 [.] memcpy@plt 1,18% [kernel] [k] rb_next 1,17% beacon_node_shared_witti_0 [.] genericReset 1,06% [kernel] [k] map_private_extent_buffer ``` after: ``` 24,88% beacon_node_shared_witti_0 [.] BIG_384_58_monty 20,29% beacon_node_shared_witti_0 [.] BIG_384_58_mul 3,15% beacon_node_shared_witti_0 [.] BIG_384_58_norm 2,93% beacon_node_shared_witti_0 [.] BIG_384_58_add 2,55% beacon_node_shared_witti_0 [.] BIG_384_58_sqr 1,64% beacon_node_shared_witti_0 [.] BIG_384_58_mod 1,63% beacon_node_shared_witti_0 [.] sha256Transform__BJNBQtWr9bJwzqbyfKXd38Q 1,48% beacon_node_shared_witti_0 [.] FP_BLS381_add 1,39% beacon_node_shared_witti_0 [.] BIG_384_58_sub 1,33% beacon_node_shared_witti_0 [.] BIG_384_58_dnorm 1,14% beacon_node_shared_witti_0 [.] FP2_BLS381_mul 1,05% beacon_node_shared_witti_0 [.] BIG_384_58_cmove 1,05% beacon_node_shared_witti_0 [.] get_shuffled_seq__4uncAHNsSG3Pndo5H11U9aQ ``` * better field iteration