Not logged in.  Login/Logout/Register | List snippets | | Create snippet | Upload image | Upload data

14
LINES

< > BotCompany Repo | #1036050 // bench_maskDiffing_justTheBitOp_singleArray (put all masks in one big array to improve cache locality)

JavaX fragment (include) [tags: use-pretranspiled]

Libraryless. Click here for Pure Java version (11519L/66K).

1  
svoid bench_maskDiffing_justTheBitOp_singleArray() {
2  
  int maskSize = 32;
3  
  L<long[]> images = repF(1000, -> new Image2BAsLongs(randomBinaryImage(maskSize)).pixels);
4  
  long[] mainImage = random(images);
5  
  int maskArraySize = l(mainImage);
6  
  long[] bigArray = concatLongArrays(images);
7  
8  
  print(benchFor5(-> {
9  
    long sum = 0;
10  
    for (int i = 0; i < bigArray.length; i += maskArraySize)
11  
      sum += countDifferingBits(mainImage, bigArray, i);
12  
    ret sum;
13  
  }));
14  
}

Author comment

Began life as a copy of #1036048

download  show line numbers  debug dex  old transpilations   

Travelled to 2 computer(s): mqqgnosmbjvj, wnsclhtenguj

No comments. add comment

Snippet ID: #1036050
Snippet name: bench_maskDiffing_justTheBitOp_singleArray (put all masks in one big array to improve cache locality)
Eternal ID of this version: #1036050/1
Text MD5: 6bc5e3fa55f85d38acac27ed7e7c7131
Transpilation MD5: 3ff9a15cdcb2d7886782c8f479af0ff7
Author: stefan
Category: javax / imaging
Type: JavaX fragment (include)
Public (visible to everyone): Yes
Archived (hidden from active list): No
Created/modified: 2022-09-03 01:55:17
Source code size: 479 bytes / 14 lines
Pitched / IR pitched: No / No
Views / Downloads: 133 / 190
Referenced in: [show references]