diff --git a/ts/scalar.go b/ts/scalar.go index c548637..e3c1ab9 100644 --- a/ts/scalar.go +++ b/ts/scalar.go @@ -20,6 +20,8 @@ func freeCScalar(x *Scalar) error { if gotch.Debug { nbytes := x.nbytes() atomic.AddInt64(&AllocatedMem, -nbytes) + + log.Printf("INFO: Released scalar %q - C memory: %d bytes.\n", x.name, nbytes) } lock.Lock() delete(ExistingScalars, x.name) @@ -30,10 +32,6 @@ func freeCScalar(x *Scalar) error { return err } - if gotch.Debug { - log.Printf("INFO: Released scalar %q - C memory: %d bytes.\n", x.name, nbytes) - } - return nil } @@ -58,15 +56,13 @@ func newScalar(cscalar lib.Cscalar, nameOpt ...string) *Scalar { if gotch.Debug { nbytes := x.nbytes() atomic.AddInt64(&AllocatedMem, nbytes) + + log.Printf("INFO: scalar %q added - Allocated memory (%d bytes).\n", x.name, nbytes) } lock.Lock() ExistingScalars[x.name] = struct{}{} lock.Unlock() - if gotch.Debug { - log.Printf("INFO: scalar %q added - Allocated memory (%d bytes).\n", x.name, nbytes) - } - runtime.SetFinalizer(x, freeCScalar) return x diff --git a/ts/tensor.go b/ts/tensor.go index dc8e554..6e5216e 100644 --- a/ts/tensor.go +++ b/ts/tensor.go @@ -70,6 +70,8 @@ func newTensor(ctensor lib.Ctensor, nameOpt ...string) *Tensor { if gotch.Debug { nbytes := x.nbytes() atomic.AddInt64(&AllocatedMem, nbytes) + + log.Printf("INFO: Added tensor %q - Allocated memory: %d bytes.\n", x.name, nbytes) } lock.Lock() if _, ok := ExistingTensors[name]; ok { @@ -80,10 +82,6 @@ func newTensor(ctensor lib.Ctensor, nameOpt ...string) *Tensor { x.name = name - if gotch.Debug { - log.Printf("INFO: Added tensor %q - Allocated memory: %d bytes.\n", x.name, nbytes) - } - x.calledFrom = "newTensor()" runtime.SetFinalizer(x, freeCTensor)