[ https://issues.apache.org/jira/browse/LUCENE-10129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17421481#comment-17421481 ]
Uwe Schindler edited comment on LUCENE-10129 at 9/28/21, 4:01 PM: ------------------------------------------------------------------ Can we also do someting for reference arrays? shallowSizeOf(Object[]) is not possible because most arrays are not compatible. We may use generics as trick: {{static <T> int shallowSizeOf(T[])}} This may speedup the related issue further: LUCENE-10128 (it has a long[][] bits, which is an array of refrences to long[] arrays). was (Author: thetaphi): Can we also do someting for reference arrays? shallowSizeOf(Object[]) is not possible because most arrays are not compatible. We may use generics as trick: {{static <T> int shallowSizeOf(T[])}} This may speedup the related issue further: > Add RamUsageEstimator shallowSizeOf(long[]) overload that just calls > sizeOf(long[])? > ------------------------------------------------------------------------------------ > > Key: LUCENE-10129 > URL: https://issues.apache.org/jira/browse/LUCENE-10129 > Project: Lucene - Core > Issue Type: Task > Reporter: Robert Muir > Priority: Major > > See LUCENE-10128 for an example. The problem is there is only a > {{sizeOf(long[])}}, so if the programmer uses {{shallowSizeOf}} instead of > {{sizeOf}} then it falls back to {{shallowSizeOf(Object)}} which does a bunch > of reflection. > This is pretty crazy because it can create performance traps. Should we just > add a {{shallowSizeOf(long[])}} that calls {{sizeOf(long[])}}, so that things > are fast? (same for other primitive arrays). It would solve the problem > easily I think. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org