pytorch
1from abc import ABC, abstractmethod2
3
4class _StreamBase(ABC):5r"""Base stream class abstraction for multi backends Stream to herit from"""6
7@abstractmethod8def wait_event(self, event):9raise NotImplementedError()10
11@abstractmethod12def wait_stream(self, stream):13raise NotImplementedError()14
15@abstractmethod16def record_event(self, event=None):17raise NotImplementedError()18
19@abstractmethod20def query(self):21raise NotImplementedError()22
23@abstractmethod24def synchronize(self):25raise NotImplementedError()26
27@abstractmethod28def __eq__(self, stream):29raise NotImplementedError()30
31
32class _EventBase(ABC):33r"""Base Event class abstraction for multi backends Event to herit from"""34
35@abstractmethod36def wait(self, stream=None):37raise NotImplementedError()38
39@abstractmethod40def query(self):41raise NotImplementedError()42
43@abstractmethod44def synchronize(self):45raise NotImplementedError()46