python - Numpy octuple precision floats and 128 bit ints. Why and how? -


this question out of curiosity. noticed numpy test suite contains tests 128 bit integers, , numerictypes module refers int128, float256 (octuple precision?), , other types don't seem map numpy dtypes on machine.

my machine 64bit, yet can use quadruple 128bit floats (but not really). suppose if it's possible emulate quadruple floats in software, 1 can theoretically emulate octuple floats , 128bit ints. on other hand, until had never heard of either 128bit ints or octuple precision floating point before. why there reference 128bit ints , 256bit floats in numpy's numerictypes module if there no corresponding dtypes, , how can use those?

this interesting question , there reasons related python, computing and/or hardware. while not trying give full answer, here go towards...

first note types defined language , can different hardware architecture. example have doubles 8-bits processor. of course arithmetic involves multiple cpu instructions, making computation slower. still, if application requires it, might worth or required (better being late wrong, if running simulation bridge stability...) 128bit precision required? here's wikipedia article on it...

one more interesting detail when computer 64-bit, not describing hardware. there lot of pieces can each (and @ least have been @ times) different bits: computational registers in cpu, memory addressing scheme / memory registers , different buses important buss cpu memory.

-the alu (arithmetic , logic unit) has registers calculations. machines 64bit (not sure if mean 2 32bit calculations @ similar time) relevant quantity discussion. long time ago, used case go out , buy co-processor speed calculations of higher precision...

-the registers hold memory addresses limit memory computer can see (directly) why computers had 32bit memory registers see 2^32 bytes (or approx 4 gb) notice 16bits, becomes 65k low. os can find ways around limit, not single program, no program in 32bit computer can have more 4gb memmory.

-notice limits bytes, not bits. because when referring , loading memory load bytes. in fact, way done, loading byte (8 bits) or 8 (64 bits == buss length computer) takes same time. ask address, , @ once bits through bus. can in architecture these quantities not same number of bits.


Comments

Popular posts from this blog

gridview - Yii2 DataPorivider $totalSum for a column -

java - Suppress Jboss version details from HTTP error response -

Sass watch command compiles .scss files before full sftp upload -