Creating real bool type for simulation in physics

Dan Nelson dnelson at allantgroup.com
Mon Mar 13 17:13:52 UTC 2006


In the last episode (Mar 13), Mathieu Prevot said:
> I use freebsd/amd64 (RELENG_6) for simulation in physics. I am
> working on the Ising model: an assembly of spins (micromagnets) which
> interact and which are in one of two states (up or down). Until now I
> use char to define the state of each spin (-1 or 1), however, I
> remarked that most time is spent on memory I/O.  Most of bits are
> unused.
> 
> I think that if I can use just one bit per spin, I can have something
> much faster. I need advices on how to use it. I guess I can't define
> a new type with a 1/8 byte height (or one bit), yes ? What variable
> (int, char...) do you recommend to use for a sempron 64 bits. I think
> I'll need to define new operators (opaque operators, built with bit
> operators) to switch my spins or use directly the following: & | ^ ~
> ...

Take a look at the "bitstring" functions, which let you allocate an
array of "bits" and manipulate them individually.  They're documented
in the bitstring manpage.

-- 
	Dan Nelson
	dnelson at allantgroup.com


More information about the freebsd-hackers mailing list