Commit Graph

429 Commits

Author SHA1 Message Date
mitchellgoffpc
807410e0ac Remove no-thneed build flag 2023-08-25 19:09:25 -07:00
mitchellgoffpc
e0287fa93e Remove USE_THNEED check from run.h 2023-08-25 19:05:49 -07:00
Kacper Rączy
a4a0429fca modeld: fix bash scripts (#29643)
Fix shebang. Fix LD_PRELOAD
2023-08-25 18:56:06 -07:00
mitchellgoffpc
ef8e0fef55 Remove thneed logic from snpemodel 2023-08-25 14:37:08 -07:00
Mitchell Goff
72a3c987c0 Rewrite modeld in python (#29230)
* Added modeld.py (WIP)

* No more VisionIpcBufExtra

* Started work on cython bindings for runmodel

* Got ONNXModel cython bindings mostly working, added ModelFrame bindings

* Got modeld main loop running without model eval

* Move everything into ModelState

* Doesn't crash!

* Moved ModelState into modeld.py

* Added driving_pyx

* Added cython bindings for message generation

* Moved CLContext definition to visionipc.pxd

* *facepalm*

* Move cl_pyx into commonmodel_pyx

* Split out ONNXModel into a subclass of RunModel

* Added snpemodel/thneedmodel bindings

* Removed modeld.cc

* Fixed scons for macOS

* Fixed sconscript

* Added flag for thneedmodel

* paths are now relative to openpilot root dir

* Set cl kernel paths in SConscript

* Set LD_PRELOAD=libthneed.so to fix ioctl interception

* Run from root dir

* A few more fixes

* A few more minor fixes

* Use C update_calibration for now to exactly match refs

* Add nav_instructions input

* Link driving_pyx.pyx with transformations

* Checked python FirstOrderFilter against C++ FirstOrderFilter

* Set process name to fix test_onroad

* Revert changes to onnxmodel.cc

* Fixed bad onnx_runner.py path in onnxmodel.cc

* Import all constants from driving.h

* logging -> cloudlog

* pylint import-error suppressions no longer needed?

* Loop in SConscript

* Added parens

* Bump modeld cpu usage in test_onroad

* Get rid of use_nav

* use config_realtime_process

* error message from ioctl sniffer was messing up pyenv

* cast distance_idx to int

* Removed cloudlog.infos in model.run

* Fixed rebase conflicts

* Clean up driving.pxd/pyx

* Fixed linter error
2023-08-25 14:36:26 -07:00
Mitchell Goff
e2e39d100b Added cython bindings for model runners and commonmodel (#29607)
* Added cython bindings for model runners and commonmodel

* Removed cython language_level=3

* loop to set CXXFLAGS for both envs
2023-08-24 17:00:26 -07:00
Justin Newberry
1ee6ed4b16 Linter: remove pylint (#29611)
remove pylint
2023-08-24 16:30:54 -07:00
mitchellgoffpc
7dae580441 Moved thneed src to top of modeld sconscript 2023-08-24 15:12:01 -07:00
mitchellgoffpc
fc8c97e7a9 Some cleanup in modeld sconscript 2023-08-24 14:41:04 -07:00
mitchellgoffpc
a184d40b7a Disable error message in thneed ioctl interceptor to fix pyenv issues 2023-08-24 14:41:04 -07:00
Dean Lee
7bfd3dac81 cpplint: add filter whitespace/comma (#29595) 2023-08-24 10:42:06 -07:00
Dean Lee
9c7bf50703 cpplint: add filter whitespace/tab (#29588) 2023-08-24 08:06:58 -07:00
Dean Lee
21da5a216f cpplint: add filter build/include_subdir (#29585) 2023-08-24 15:42:17 +01:00
Dean Lee
f203648de0 cpplint: add filter whitespace/semicolon (#29568) 2023-08-23 15:00:30 -07:00
Dean Lee
5480d32bb5 cpplint: add filter whitespace/parens (#29565) 2023-08-23 14:25:05 -07:00
Dean Lee
2d99521e75 cpplint: build/include_what_you_use (#29556)
* include_what_you_use

* remove comments

* include <memory>

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-08-23 13:25:17 -07:00
mitchellgoffpc
7699444816 Set paths for cl kernels and onnx_runner.py in modeld SConscript 2023-08-21 19:38:40 -07:00
mitchellgoffpc
24090d2121 Move USE_RUNTIME flags into runmodel.h 2023-08-21 19:26:48 -07:00
mitchellgoffpc
8c478708ee exit if onnxmodel exec fails 2023-08-21 19:23:23 -07:00
Adeeb Shihadeh
a9626f95b6 add openpilot prefix to imports (#29498)
* add openpilot prefix to imports

* more

* more

* fix docs

* fix linter

* bump submodules

* fix patched tests

* update dynamic imports

* debug

* Revert "debug"

This reverts commit db5e13b9911cc74438bee123bc3430da6c31b24b.

* fix pm test
2023-08-20 20:49:55 -07:00
Justin Newberry
e4ead4f183 Ruff: b905 (strict zip) (#29336)
* added mutable default args

* most of the Bs

* add comment about lrucache

* b905
2023-08-11 16:13:51 -07:00
Justin Newberry
62c1e65924 Ruff: enable most of bugbear (#29320)
* added mutable default args

* most of the Bs

* add comment about lrucache
2023-08-11 15:33:49 -07:00
Mitchell Goff
c04e5d12fc Non-Inflatable Model 🎈 (#29003)
* Added all maneuvers to navInstruction message

* Added nav instruction logic to modeld

* New model: fcee01c1-96bb-414f-b00d-e4a994a00922/700

* Fixed bug in navd

* Added sharp/slight modifiers

* Updated refs
2023-08-09 19:56:45 -07:00
Justin Newberry
7fdd9fc37c CI: Pylint to ruff (#29294)
* pylint to riff

* pylint to riff

* pylint to riff

* revert more

* undo exclude removal

* exclude tinygrad

* set line length

* pylint exclusions to ruff

* same excludes as old linter

* fix tools QA

* remove unrequired check

* revert linting third_party

* ignore e402
2023-08-09 13:26:54 -07:00
Justin Newberry
a91764954b Revert "CI: pylint to ruff (#29276)" (#29284)
This reverts commit cb31a53d8a.
2023-08-08 14:24:04 -07:00
Justin Newberry
cb31a53d8a CI: pylint to ruff (#29276)
* pylint to riff

* pylint to riff

* pylint to riff

* revert more

* undo exclude removal

* exclude tinygrad
2023-08-08 13:41:30 -07:00
eFini
e883789c0e unused variables removal (#29247) 2023-08-06 21:41:13 -07:00
mitchellgoffpc
66dfe8fd5e Added modeld gitignore 2023-08-04 14:14:45 -07:00
Mitchell Goff
663fc0d8fe Clean up model_publish args to simplify cython bindings (#29203)
* Clean up model_publish args to simplify cython bindings

* pass by reference

* Move FCW and model confidence queues into PublishState
2023-08-01 19:23:18 -07:00
Kacper Rączy
c640429406 aarch64: ubuntu build support (#29171)
* Add support for aarch64 pc linux

* Add new libyuv path to release files

* Add libyuv's x86_64 lib dir

* Move left-over platform specific dirs from files_common

* Remove libyuv/lib directory (duplicate)

* Fix mpc Sconscripts

* Remove acados lib path from mpc sources

* Fix typo

* Add watch3 exec on aarch64
2023-08-01 16:18:46 -07:00
Dean Lee
940954c13e swaglog: enable type-checked against format string (#29096)
* check&fix fmt

* bump rednose

* correct format string

* bump rednose

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-07-31 17:49:50 -07:00
Nima Khodaveisi
24c7b044de dmmonitoringmodeld: remove unused libyuv import (#29180) 2023-07-31 13:23:13 -07:00
YassineYousfi
14e524d52b models/README: DM input is only luma (#29188)
dm input = only luma
2023-07-31 12:57:22 -07:00
Shane Smiskol
12ed894362 dmonitoringmodeld: initialize model first (#29080)
* hacky fix

* even better

* ordering

* clean up

* fix model replay

* add comment

* catch sigint
2023-07-23 09:28:22 -07:00
Shane Smiskol
6bc28fc769 experimental mode: gate nav (#29007)
* first draft copy, needs updates

* gate behind exp mode

* can be one line

* this is no longer true

* toggle isn't just e2e long now, rename

* don't enable/disable

* kinda works!

* remove old giant qstring

* comment clean up

* similar breakpoint

* more clean up

* fixup onroad

* preserve planner behavior, and we don't need to look at confirmed param if we're onroad

* update translations

* vanish translations

* use scene for op long

* lowercase!

* updated copy

* need to check longitudinal here now too

* clean up!

* here is better

* used

* no nav emoji

* don't check param if not valid

* revert this

revert this

* ed

* revert experimental mode longitudinal checks (still need to revert toggle change)

* revert

* logic works

* revert test

* fix

* update translation

* fix (reset and update)
2023-07-17 21:18:18 -07:00
Kacper Rączy
8ce72760e7 onnx_runner: force determinism (#29000) 2023-07-18 05:52:07 +02:00
Shane Smiskol
b5b431c12d Revert "experimental mode: gate navigate on openpilot (#28883)" (#29005)
This reverts commit f973d605b2.
2023-07-17 19:56:38 -07:00
Dean Lee
8dcd92253b dmonitoring: use sizeof(float) instead of hardcorded size (#28963) 2023-07-15 10:30:50 -07:00
Cameron Clough
ce0717670b modeld: comment out unused variables (#28944) 2023-07-14 17:45:00 +01:00
Shane Smiskol
f973d605b2 experimental mode: gate navigate on openpilot (#28883)
* first draft copy, needs updates

* gate behind exp mode

* can be one line

* this is no longer true

* toggle isn't just e2e long now, rename

* don't enable/disable

* kinda works!

* remove old giant qstring

* comment clean up

* similar breakpoint

* more clean up

* fixup onroad

* preserve planner behavior, and we don't need to look at confirmed param if we're onroad

* update translations

* vanish translations

* use scene for op long

* lowercase!

* updated copy

* need to check longitudinal here now too

* clean up!

* here is better

* used

* no nav emoji

* don't check param if not valid

* revert this

revert this

* ed
2023-07-14 05:26:59 -07:00
Adeeb Shihadeh
8d13ddb943 dmonitoringmodeld: add more logging around the init (#28920) 2023-07-13 11:58:51 -07:00
Mitchell Goff
e346839c68 nav model: fix flicker in nav enabled state (#28815)
* Fix flicker in nav enabled state

* Move all relevant information for validity checks into navModel packet

* Ignore locationMonoTime in replay tests

* Check route valid in navmodeld

* sm update

* check that

* update refs

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-07-09 15:10:02 -07:00
Mitchell Goff
c9f00678af Refactor model runners (#28598)
* Started work on model runner refactor

* Fixed some compile errors

* everything compiles

* Fixed bug in SNPEModel

* updateInput -> setInputBuffer

* I understand nothing

* whoops lol

* use std::string instead of char*

* Move common logic into RunModel

* formatting fix
2023-07-06 22:26:11 -07:00
Dean Lee
32c5e6aafb modeldata.h: convert constants to uppercase (#28769) 2023-07-01 08:26:21 +01:00
Mitchell Goff
531c13f2ac Moonrise Model (#28761)
* New model: 889463fc-5e5d-497d-9111-c8567a13cabf

* Updated model replay ref
2023-06-30 18:52:20 -07:00
ZwX1616
ce2dffe566 Modeld: send confidence class (#28625)
* 0.7

* magic

* faster magic

* more simple

* up

* empty

* more mid bits

* naive

* flatten

* dz

* that can stay

* this is fine

* what the

* what the

* giRevert "what the"

This reverts commit 1619ba68e6098dc581fe9b82e7ecb74562b619cc.

* Revert "what the"

This reverts commit 0037dd368290497a6d0009ca34adb2184b584d2e.

* 1x fine

* that was fine

* combined

* independent cum

* 0 is fine

* use metrics

* up cereal

* process and publish from modeld

* cleanup

* use s.output

* bg

* a greener approach

* dns

* serial

* update ref commit

* rebase

* ref

* cereal master

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-06-23 16:49:14 -07:00
Mitchell Goff
4c2c73b152 Publish navEnabled from modeld (#28647)
* Publish navEnabled from modeld

* Bump cereal
2023-06-22 19:39:51 -07:00
Kacper Rączy
2c617e0c7a process_replay: modeld and dmonitoringmodeld support (#28463)
* vipc support. modeld and dmonitoringmodeld configs

* Update cereal

* Add vision meta

* Use vision meta in process replay

* Exclude modeld and dmonitoringmodeld from test_processes

* Refactor other pieces of code to use vision meta

* remove unnecessary imports

* Add MAX_FRAMES_PER_SEGMENT

* cameraState migration

* Move camera state migration to migration module

* model_replay refactor

* Fix lint issues

* Reduce number of vipc buffers to 2

* Update spinner message

* Update model replay ref

* Support the new log order

* Replace CameraFrameSizes with dict. Add encode_index field

* Migrate camera states based on encode indices

* Refactor process replay

* Refactor model replay

* Remove unnecessary print

* Update model replay ref

* Make camera state migration optional

* Remove unused import

* Add ignore_alive_pubs field

* Add assertion for carParams inside fingerprinting callback

* Remove WideCameraOnly param setup

* Refactor ModeldCameraSyncRcvCallback

* Update model replay ref commit

* Fix camera state migration

* Only migrate camera states when process has vision pubs

* Refactor model replay again

* Fix linter issues

* One more linter fix

* Update model replay ref commit
2023-06-22 17:36:25 -07:00
Mitchell Goff
ae5bfcf248 Remove get_model_yuv_transform function (#28568)
* remove yuv_transform from update_calibration

* Remove get_model_yuv_transform entirely
2023-06-21 20:02:44 -07:00
Mitchell Goff
aadd9ae269 Enable nav features in modeld (#28448)
* Enable nav features in modeld

* Enable mapsd/navmodeld

* Updated model_replay_ref_commit and added mapsd/navmodeld to test_onroad

* fixed process name

* always publish from mapsd
2023-06-16 21:27:35 -07:00