[ https://issues.apache.org/jira/browse/FLINK-8117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gabor Gevay resolved FLINK-8117. -------------------------------- Resolution: Implemented > Eliminate modulo operation from RoundRobinChannelSelector and > RebalancePartitioner > ---------------------------------------------------------------------------------- > > Key: FLINK-8117 > URL: https://issues.apache.org/jira/browse/FLINK-8117 > Project: Flink > Issue Type: Improvement > Components: Local Runtime, Streaming > Reporter: Gabor Gevay > Assignee: Gabor Gevay > Priority: Minor > Labels: performance > Fix For: 1.5.0 > > > {{RoundRobinChannelSelector}}, {{RebalancePartitioner}}, and > {{RescalePartitioner}} use a modulo operation to wrap around when the current > channel counter reaches the number of channels. Using an {{if}} would have > better performance. > A division with 32 bit operands is ~25 cycles on modern Intel CPUs \[1\], but > the {{if}} will be only 1-2 cycles on average, since the branch predictor can > most of the time predict the condition to be false. > \[1\] http://www.agner.org/optimize/instruction_tables.pdf -- This message was sent by Atlassian JIRA (v6.4.14#64029)