func New() DRWMutex {
	return make(DRWMutex, len(cpus))
}
New returns a new, unlocked, distributed RWMutex.
package drwmutex
import (
	"fmt"
	"os"
	"runtime"
	"sync"
	"time"
)
var cpus map[uint64]int
func init() {
	start := time.Now()
	cpus = map_cpus()
	fmt.Fprintf(os.Stderr, "%d/%d cpus found in %v: %v\n", len(cpus), runtime.NumCPU(), time.Now().Sub(start), cpus)
}
type paddedRWMutex struct {
	_  [8]uint64  
	mu sync.RWMutex
}
type DRWMutex []paddedRWMutex