
* fix.. speed_limit error... * draw tpms settings. * fix.. traffic light stopping only.. * fix.. waze cam * fix.. waze... * add setting (Enable comma connect ) * auto detect LFA2 * fix.. cruisespeed1 * vff2 driving model. * fix.. * agnos 12.3 * fix.. * ff * ff * test * ff * fix.. drawTurnInfo.. * Update drive_helpers.py * fix.. support eng voice eng sounds fix settings... english fix.. mph.. fix.. roadlimit speed bug.. * new vff model.. 250608 * fix soundd.. * fix safe exit speed.. * fix.. sounds. * fix.. radar timeStep.. * KerryGold model * Update drive_helpers.py * fix.. model. * fix.. * fix.. * Revert "fix.." This reverts commit b09ec459afb855c533d47fd7e8a1a6b1a09466e7. * Revert "fix.." This reverts commit 290bec6b83a4554ca232d531a911edccf94a2156. * fix esim * add more acc table. 10kph * kg update.. * fix cruisebutton mode3 * test atc..cond. * fix.. canfd * fix.. angle control limit
44 lines
1.1 KiB
Python
44 lines
1.1 KiB
Python
import unittest, time
|
|
from tinygrad.uop.ops import UOp
|
|
from tinygrad.dtype import dtypes
|
|
|
|
# it's about 1 ms per 1k UOps on M3
|
|
N = 10000
|
|
|
|
class TestMicrobenchmarks(unittest.TestCase):
|
|
def setUp(self):
|
|
self.st = time.perf_counter()
|
|
def tearDown(self):
|
|
et = (time.perf_counter() - self.st)
|
|
print(f"{self._testMethodName} {et*1e3:.2f} ms")
|
|
|
|
def test_uop_instant_creation(self):
|
|
for i in range(N): UOp.const(dtypes.int, 100+i)
|
|
|
|
def test_uop_list_creation(self):
|
|
[UOp.const(dtypes.int, 100+i) for i in range(N)]
|
|
|
|
def test_uop_add_2n(self):
|
|
a = UOp.const(dtypes.int, 2)
|
|
for _ in range(N): a = a + a
|
|
|
|
def test_uop_toposort(self):
|
|
a = UOp.const(dtypes.int, 0)
|
|
for i in range(N): a = a + UOp.const(dtypes.int, 100+i)
|
|
self.setUp()
|
|
self.assertEqual(len(a.toposort()), 2*N+1)
|
|
|
|
def test_uop_toposort_2n(self):
|
|
a = UOp.const(dtypes.int, 0)
|
|
for i in range(N): a = a + a
|
|
self.setUp()
|
|
self.assertEqual(len(a.toposort()), N+1)
|
|
|
|
def test_uop_simplify(self):
|
|
a = UOp.const(dtypes.int, 2)
|
|
for _ in range(N): (a+a).simplify()
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|
|
|