[ https://issues.apache.org/jira/browse/STATISTICS-77?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anirudh Joshi updated STATISTICS-77: ------------------------------------ Description: This implementation uses {{commons-numbers}} [Sum|https://github.com/apache/commons-numbers/blob/master/commons-numbers-core/src/main/java/org/apache/commons/numbers/core/Sum.java] as the underlying implementation. This may be further expanded to include various other Sum implementations like `[Kahan Sum|[https://en.wikipedia.org/wiki/Kahan_summation_algorithm]], {{Neumaier Sum}} (Two sum method) etc. with the option for the users to choose an implementation. However, before beginning the implementation of various other algorithms it may be worthwhile to discuss and investigate the relative speed of the current Sum implementation compared to {{DoubleStream.sum}} through JMH benchmarks. When we know the different speeds, it would be more clear if the user should have a choice for this statistic, e.g. * When using {{DoubleStream.sum}} is too slow and it would be nice to have a simple sum variation. * When the sum has a lot of cancellation and {{DoubleStream.sum}} suffers from random walk around zero. was: This implementation uses {{commons-numbers}} [Sum|https://github.com/apache/commons-numbers/blob/master/commons-numbers-core/src/main/java/org/apache/commons/numbers/core/Sum.java] as the underlying implementation. This may be further expanded to include various other Sum implementations like `[Kahan Sum|[https://en.wikipedia.org/wiki/Kahan_summation_algorithm]], {{Neumaier Sum}} (Two sum method) etc. with the option for the users to choose an implementation. However, before beginning the implementation of various other algorithms it may be worthwhile to discuss and investigate the relative speed of the current Sum implementation compared to {{DoubleStream.sum}} through JMH benchmarks. When we know the different speeds, it would be more clear if the user should have a choice for this statistic, e.g. * When using {{DoubleStream.sum}} is too slow and it would be nice to have a simple sum variation. * When the sum has a lot of cancellation and {{DoubleStream.sum}} suffers from random walk around zero. > Implement Sum > ------------- > > Key: STATISTICS-77 > URL: https://issues.apache.org/jira/browse/STATISTICS-77 > Project: Commons Statistics > Issue Type: Sub-task > Components: descriptive > Reporter: Anirudh Joshi > Priority: Minor > Labels: gsoc, gsoc2023 > > This implementation uses {{commons-numbers}} > [Sum|https://github.com/apache/commons-numbers/blob/master/commons-numbers-core/src/main/java/org/apache/commons/numbers/core/Sum.java] > as the underlying implementation. > This may be further expanded to include various other Sum implementations > like `[Kahan Sum|[https://en.wikipedia.org/wiki/Kahan_summation_algorithm]], > {{Neumaier Sum}} (Two sum method) etc. with the option for the users to > choose an implementation. However, before beginning the implementation of > various other algorithms it may be worthwhile to discuss and investigate the > relative speed of the current Sum implementation compared to > {{DoubleStream.sum}} through JMH benchmarks. > When we know the different speeds, it would be more clear if the user should > have a choice for this statistic, e.g. > * When using {{DoubleStream.sum}} is too slow and it would be nice to have a > simple sum variation. > * When the sum has a lot of cancellation and {{DoubleStream.sum}} suffers > from random walk around zero. -- This message was sent by Atlassian Jira (v8.20.10#820010)