* WIP try modeld all in python
* fix plan
* add lane lines stds
* fix lane lines prob
* add lead prob
* add meta
* simplify plan parsing
* add hard brake pred
* add confidence
* fix desire state and desire pred
* check this file for now
* rm prints
* rm debug
* add todos
* add plan_t_idxs
* same as cpp
* removed cython
* add wfd width - rm cpp code
* add new files rm old files
* get metadata at compile time
* forgot this file
* now uses more CPU
* not used
* update readme
* lint
* copy this too
* simplify disengage probs
* update model replay ref commit
* update again
* confidence: remove if statemens
* use publish_state.enqueue
* Revert "use publish_state.enqueue"
This reverts commit d8807c8348.
* confidence: better shape defs
* use ModelConstants class
* fix confidence
* Parser
* slightly more power too
* no inline ifs :(
* confidence: just use if statements
old-commit-hash: cad17b1255
* bump tinygrad to master
* ops_cpu is required now
* and that one too
* tinygrad is getting out of hand with all the files
* bump tinygrad
* update ref commit
* tinygrad master
* Revert "update ref commit"
This reverts commit e728415289.
* bump tinygrad repo
* bump master
* update ref commit
old-commit-hash: 50d720fc2e
* Added navmodeld.py
* Deleted navmodeld.cc
* Write SConscript config flags to config.py
* Remove deleted files from release/files_common
* Some more bug fixes
* Added config.py to gitignore
* Get rid of config.py
* Use set_realtime_priority
* A tiny bit more cleanup
* set realtime priority 1
* Use ModelRunner helper class from runners/__init__.py
* Formatting fixes
* mama mia that's a SPICY memory leak
old-commit-hash: 0c0af682a1
* 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
old-commit-hash: 72a3c987c0
* Added cython bindings for model runners and commonmodel
* Removed cython language_level=3
* loop to set CXXFLAGS for both envs
old-commit-hash: e2e39d100b
* Added navmodeld
* New nav model: 7c306685-5476-4bd4-ab65-105b01b6bca8/300, feats only
* little cleanup
* Remove NAV flag
* Moved to_kj_array_ptr to commonmodel.h
* Switch from decimation to last_frame_id check
* add to release files
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: bb8a38a050
* delete unused stuff
* remove CL interceptor from thneed since we don't use SNPE anymore
* remove dead files from release
* that's removed
* oops, didn't save
old-commit-hash: 6c39382d71
* compiling, won't work yet
* running with inputs and outputs
* there's some magic chance this works
* no more dlc, include onnx
* yolo tests plz
* bump tinygrad
* files_common + delete dlc
* tinygrad_repo -> tinygrad
* pre commit config
* llops needed
* extra in files_common
* bump tinygrad
* fix indent
* tinygrad/nn/__init__
* tinygrad_repo
* bump tinygrad repo
* bump tinygrad
* bump with native_exp, match maybe
* native_explog is argument
* pyopencl no cache
* 5% chance this matches
* work in float32?
* bump tinygrad
* fix build
* no __init__
* fix recip
* dumb hack
* adding thneed PC support
* fix pc segfault
* pc thneed is working
* to_image
* prints stuff with debug=2
* it sort of works
* copy host ptr is simpler
* bug fix
* build on c3
* this correct?
* reenable float16
* fix private, fixup copy_inputs internal
* bump tinygrad and update ref commit
* fix OPTWG on PC
* maybe fix non determinism
* revert model replay ref commit
* comments, init zeroed out buffers
* upd ref commit
* bump tinygrad to fix initial image
* try this ref
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 40d6f4b65c
* pc thneed prereqs
* ugh, out of date
* that can stay private
* memcpy here is fine in SNPE variant
* release files
* thneed docs don't work anymore. they didn't look too useful
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: b6e355a933
* First attempt
* worksish
* tests pass
* cleanup
* get rid of garbahe
* fix name
* Still used in xx
* add debug functions
* used
* Revert "used"
This reverts commit 276e8ebab06d2d4f0e9927ba32b7d8aca2bf88c3.
* Update ref
old-commit-hash: 772b748689
* mse err from 0.028070712 -> 5.8073703e-05
* build with weights fixup
* need thneed lib also
* don't break for binaries
* static analysis says i need init
* check the bias
* load_dlc_weights
* nicer scons
* tested scons
* fix static
* pylint issue
* new ref
* a few more asserts
Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
old-commit-hash: 8d6f49aecf
* Added wide cam vipc client and bigmodel transform logic
* Added wide_frame to ModelState, should still work normally
* Refactored image input into addImage method, should still work normally
* Updated thneed/compile.cc
* Bigmodel, untested: 44f83118-b375-4d4c-ae12-2017124f0cf4/200
* Have to initialize extra buffer in SNPEModel
* Default paramater value in the wrong place I think
* Move USE_EXTRA to SConscript
* New model: 6c34d59a-acc3-4877-84bd-904c10745ba6/250
* move use extra check to runtime, not on C2
* this is always true
* more C2 checks
* log if frames are out of sync
* more logging on no frame
* store in pointer
* print sof
* add sync logic
* log based on sof difference as well
* keep both models
* less assumptions
* define above thneed
* typo
* simplify
* no need for second client is main is already wide
* more comments update
* no optional reference
* more logging to debug lags
* add to release files
* both defines
* New model: 6831a77f-2574-4bfb-8077-79b0972a2771/950
* Path offset no longer relevant
* Remove duplicate execute
* Moved bigmodel back to big_supercombo.dlc
* add wide vipc stream
* Tici must be tici
* Needs state too
* add wide cam support to model replay
* handle syncing better
* ugh, c2
* print that
* handle ecam lag
* skip first one
* so close
* update refs
Co-authored-by: mitchellgoffpc <mitchellgoffpc@gmail.com>
Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 85efde269d
* add thneed optimizer
* local work group opt
* kernels and final mods
* release files
* build system touchups
* fix kernel path, rand inputs for self test
* broken since extra is gone
* update model replay ref
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 90beaebefb
* unlogger: send yuv stream
* fix up model test tools
* fix unlogger
* rename model replay
* bump cereal
* test in actions
* no ci for now
old-commit-hash: cf6d133638
* only link as needed
* a few more
* need to fix order
* everywhre
* fix mac
* update spinner + text
* fix c2 build
* another fix
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 36d8c89ebf
* start thneed load/save
* compiling
* fix loading
* build thneed model in scons
* don't hardcode /data/openpilot
* release files
* those too
* support for loading/saving binary kernels
* save binaries out of json band
* make binary a command line flag to the compiler
* need include assert
* fix shadowed common in SConscript
* cleanup run.h
* hmm, the recurrent buffer wasn't 0ed
* ugh, unique ptr
* remove power constraint, refactor record
* Revert "remove power constraint, refactor record"
This reverts commit bb6fa52db6df59cd9d6420a6f630430e35af8a5e.
* print on thneed stop
* fingers crossed for this one
* recorded
* just curious
* okay okay, pass tests?
* cleanups
* refactor wait
Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 59fac9fdc6
* refactor draw model
* rebase master
* correct valid_len
* rename function
* rename variables
* white space
* rebase to master
* e16c13ac-927d-455e-ae0a-81b482a2c787
* start rewriting
* save proress
* compiles!
* oops
* many fixes
* seems to work
* fix desires
* finally cleaned
* wrong std for ll
* dont pulse none
* compiles!
* ready to test
* WIP does not compile
* compiles
* various fixes
* does something!
* full 3d
* not needed
* draw up to 100m
* fix segfault
* wrong sign
* fix flicker
* add road edges
* finish v2 packet
* Added pytorch supercombo
* fix rebase
* no more keras
* Hacky solution to the NCHW/NHWC incompatibility between SNPE and our frame data
* dont break dmonitoringd, final model 229e3ce1-7259-412b-85e6-cc646d70f1d8/430
* fix hack
* Revert "fix hack"
This reverts commit 5550fc01a7881d065a5eddbbb42dac55ef7ec36c.
* Removed axis permutation hack
* Folded padding layers into conv layers
* Removed the last pad layer from the dlc
* Revert "Removed the last pad layer from the dlc"
This reverts commit b85f24b9e1d04abf64e85901a7ff49e00d82020a.
* Revert "Folded padding layers into conv layers"
This reverts commit b8d1773e4e76dea481acebbfad6a6235fbb58463.
* vision model: 5034ac8b-5703-4a49-948b-11c064d10880/780 temporal model: 229e3ce1-7259-412b-85e6-cc646d70f1d8/430 with permute + pool opt
* fix ui drawing with clips
* ./compile_torch.py 5034ac8b-5703-4a49-948b-11c064d10880/780 dfcd2375-81d8-49df-95bf-1d2d6ad86010/450 with variable history length
* std::clamp
* not sure how this compiled before
* 2895ace6-a296-47ac-86e6-17ea800a74e5/550
* db090195-8810-42de-ab38-bb835d775d87/601
* 5m is very little
* onnx runner
* add onnxruntime to pipfile
* run in real time without using the whole CPU
* bump cereal;
* add stds
* set road edge opacity based on stddev
* don't access the model packet in paint
* convert mat.h to a c++ header file (#2499)
* update tests
* safety first
Co-authored-by: deanlee <deanlee3@gmail.com>
Co-authored-by: mitchell <mitchell@comma.ai>
Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: George Hotz <george@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 08846b5c0e