Skip to content

DISCUSS: What should the default integer type/dtype be #24890

@seberg

Description

@seberg

This has been discussed many times before in various places e.g. gh-9464, gh-17640, and maybe most importantly gh-12332.

There are always some opinions voiced the default should always be int64. Because our indexing is specialized for int32, and we have quite a bit of functions that use intp explicitly, I had at some point decided that intp would be a far more pragmatic change:

  • Smaller change: Only affects windows users. 32bit platforms are unaffected.
  • Means you always get the same integers by default (indexing or not), so the distinction between indexing and default integer becomes less relevant.
  • Is really a rather simple change in practice, while I am not sure how complex a full 64bit change is.
  • Indexing code is specialized for intp. 32bit platforms would get a performance regression in all indexing related things unless significant work gets into specializing for more types.

Thus, I have for a long time always considered the path forward to change to intp and hoped that 2.0 would be a point where to do it (mentioned in all meetings/notes around that as: change the default integer on windows). That is implemented in gh-24224.

However, maybe the consensus actually goes into a different direction, since there is an overlapping discussion in gh-24794.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions