Skip to content

Instantly share code, notes, and snippets.

@gegeke
Created June 7, 2019 14:36
Show Gist options
  • Save gegeke/a734facc0ebfcec232e76296962540e8 to your computer and use it in GitHub Desktop.
Save gegeke/a734facc0ebfcec232e76296962540e8 to your computer and use it in GitHub Desktop.
Addition benchmarking using for Duff's Device
export const addSingle = (items, noItems) => {
return new Promise((resolve) => {
let iterations = parseInt(noItems / 8, 10)
// get remainder
let i = noItems % 8
let sumData = 0
if (i > 0) {
while(i) {
sumData += items[i--].data1
}
}
i = noItems - i - 1
do {
sumData += items[i--].data1
sumData += items[i--].data1
sumData += items[i--].data1
sumData += items[i--].data1
sumData += items[i--].data1
sumData += items[i--].data1
sumData += items[i--].data1
sumData += items[i--].data1
} while (--iterations > 0)
resolve(sumData)
})
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment