go-randomx/dataset_light.go
DataHoarder 36f1a90a20
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Version v3.0.0, support full datataset mode in 64-bit targets, modified api, optimized allocations, full VM run JIT on amd64, optimize AES asm
2024-04-23 04:33:42 +02:00

45 lines
768 B
Go

package randomx
type DatasetLight struct {
cache *Cache
}
func NewLightDataset(cache *Cache) *DatasetLight {
return &DatasetLight{
cache: cache,
}
}
func (d *DatasetLight) PrefetchDataset(address uint64) {
}
func (d *DatasetLight) ReadDataset(address uint64, r *RegisterLine) {
var cache RegisterLine
if d.cache.HasJIT() {
d.cache.InitDatasetItemJIT(&cache, address/CacheLineSize)
} else {
d.cache.InitDatasetItem(&cache, address/CacheLineSize)
}
for i := range r {
r[i] ^= cache[i]
}
}
func (d *DatasetLight) Flags() uint64 {
return d.cache.Flags
}
func (d *DatasetLight) Cache() *Cache {
return d.cache
}
func (d *DatasetLight) Memory() []RegisterLine {
return nil
}
func (d *DatasetLight) InitDataset(startItem, itemCount uint64) {
}