Seems like std::bitset under the hood is an array of unsigned longs now, this means that there will be an (heavy?) overhead when N is smal
std::bitset
unsigned longs