diff --git a/test/test_ops.py b/test/test_ops.py index 24f96a7018..89df107a4c 100644 --- a/test/test_ops.py +++ b/test/test_ops.py @@ -916,6 +916,10 @@ class TestOps(unittest.TestCase): helper_test_op([(45,65)], torch.log, Tensor.log) helper_test_op(None, torch.log, Tensor.log, vals=[[math.inf, -math.inf, math.nan]]) helper_test_op([()], torch.log, Tensor.log) + def test_log10(self): + helper_test_op([(45,65)], torch.log10, Tensor.log10) + helper_test_op(None, torch.log10, Tensor.log10, vals=[[math.inf, -math.inf, math.nan]]) + helper_test_op([()], torch.log10, Tensor.log10) def test_log2(self): helper_test_op([(45,65)], torch.log2, Tensor.log2) helper_test_op(None, torch.log2, Tensor.log2, vals=[[math.inf, -math.inf, math.nan]]) diff --git a/tinygrad/tensor.py b/tinygrad/tensor.py index f46f2298ab..1bd473e579 100644 --- a/tinygrad/tensor.py +++ b/tinygrad/tensor.py @@ -2760,6 +2760,18 @@ class Tensor(OpMixin): """ return self.log2()*math.log(2) + def log10(self) -> Tensor: + """ + Computes the base-10 logarithm element-wise. + + See: https://en.wikipedia.org/wiki/Logarithm + + ```python exec="true" source="above" session="tensor" result="python" + print(Tensor([1., 2., 4., 8.]).log10().numpy()) + ``` + """ + return self.log2()*math.log10(2) + def log2(self) -> Tensor: """ Computes the base-2 logarithm element-wise.