init: raw cpuid/rdtsc access via ctypes

This commit is contained in:
ImSavsis 2026-07-19 23:29:46 +05:00
commit fa82965ab5
15 changed files with 437 additions and 0 deletions

48
docs/quickstart.md Normal file
View file

@ -0,0 +1,48 @@
# quickstart
## установка
```
pip install rawcpu
```
## узнать процессор
```python
import rawcpu
print(rawcpu.vendor()) # GenuineIntel / AuthenticAMD
print(rawcpu.brand()) # полная строка модели
```
## проверить фичи перед SIMD-кодом
```python
if rawcpu.has_feature("avx2"):
# можно грузить AVX2-путь
...
else:
# fallback
...
```
список доступных имён — `rawcpu.FEATURES`.
## точный замер тактов
`time.perf_counter()` меряет время через ОС, `rdtsc()` — реальные такты процессора напрямую:
```python
start = rawcpu.rdtsc()
do_something()
end = rawcpu.rdtsc()
print(end - start, "cycles")
```
## сырой cpuid
```python
eax, ebx, ecx, edx = rawcpu.cpuid(leaf=7, subleaf=0)
```
leaf/subleaf — как в интеловской документации по CPUID.