Files
calculet-npu-research-archive/history/topics/01-concurrency-async-job-queue.tsv

75 lines
12 KiB
Plaintext

37e65977fb05e671b1acfb4a11e96d2d6a3a5839 cde1d40fc252240b2ccdab0785d53e3643f84193 2026-05-29T15:45:23+08:00 patrickyang fix atomic memory order issues
ff9f1440163846534a91e5c6f6e1072e76a98456 904993432e59dbe1ba6e2060cac875117e9e18b9 2026-05-25T14:13:59+08:00 patrickyang update infer launcher to avoid 0 value for csr. Update job engine to get actual task time for debug usage. improve compability to supoort arm
e759441adb552be27579871112abf452ede026ba 50891ffaf41e1b1ac54a8af52af57383b2426e01 2026-05-21T13:38:37+08:00 patrickyang update log lock to time out while loop
6f95f35af17c11e7addfc22a6938dc4517d5be64 51184d659f00224d1886d88e7e9970d4f3e9c03f 2026-05-13T11:30:19+08:00 patrickyang fix refresh bug. failed to refresh memory. failed to obtain shm lock
51184d659f00224d1886d88e7e9970d4f3e9c03f 303dbe04ef7264dc82650ec37b81bdec60ff1597 2026-05-13T11:05:04+08:00 patrickyang fix bugs for obtaining lock to refresh device list
d4ebcf4f0f81edb56b5112925e196004af4fbf11 2c3bab6ed07c50b4ea344ddca468b631cb454169 2026-04-16T18:14:22+08:00 patrickyang upt slb cmd serialization bug
d8ae5feb40becd16fa19222cec2815540097c979 616337c570262b3ae1c90ed5c473b426e86484b4 2026-04-13T11:28:31+08:00 patrickyang slightly improve job engine performance at high-freq job execution
3773869c7758d2bb0167daf20356bfb0e67bfb81 c267183d399f345b6be343c705bf6bf0f97585e0 2026-04-08T11:05:35+08:00 patrickyang rm clock freq adjustion
c6f7c088d56ba4cbb4063fcd7819f64f0a195fd3 2d9019e79b11b8159f428111a6ea0a876669933c 2026-03-26T10:21:33+08:00 patrickyang add more cli trace log
b14a1cd6a6ef4f439394a3f3e0f7886a2b8576bf 27b2c8ca75784a376628621e39e543af2a733907 2026-03-25T10:38:13+08:00 patrickyang add more trace log. may slightly impact rt performance
ba9526a6f191b663083b346173fc4c46370f51ba 586ee6d97ac2af3193d3cb8d17dfb4b7d1e8546c 2026-03-24T17:59:37+08:00 patrickyang fixed trace bug cause core dump
586ee6d97ac2af3193d3cb8d17dfb4b7d1e8546c c356c5e3ab09241845a524820a4ed95cdd405a70 2026-03-24T17:28:45+08:00 patrickyang add more trace log
00c2f05d0a084d982118dd9ba9131e5c469164a9 bc5ded3655a8516726abc80e1c70491952540158 2026-03-19T15:02:45+08:00 patrickyang upt start job queue. improve safety for job entries less than 4
ff15fff2eebdf4e64ed5192a1eea648fd6286a27 c4138273a90df4fb2c1ea3a98e5ee44254e8b65c 2026-03-13T11:36:14+08:00 patrickyang align emu end job queue mode
f967dbe0fff392e22a2a0baa77a34ce2f946886a edb26bec507c7c16be4b658314d497171f9b39d5 2026-03-13T11:20:28+08:00 patrickyang support get infer time consume via job end queue
f52b519897fc32cace5fc878170ae22821975d5b f29a9ba4dd3f2471b305eb95e93e188fa84e4539 2026-02-04T18:00:35+08:00 patrickyang update job engine for thread-safe
0eb11558ce0c54c42cbda06ea35cb9dcb5e200a1 8d6b20dab413486f5b48cb7f08862f6bd676b664 2026-02-02T15:05:22+08:00 patrickyang emergently fix job engine bug which happen at async mode trigger nullptr bahavior
ef72e26a38ceb61f38681c12619b6c241b712b3e cd232cf8baab75884094ed2d3cc46f89cae8feb7 2026-01-30T11:00:32+08:00 patrickyang new feature: enable user to set up RT working mode:async or serial
f37176737c84e28b8c8199a5eda1751fe1838ceb 3178a5444a3d7e6d66aac727957d6e4dc7cd54f2 2026-01-04T14:58:49+08:00 patrickyang use queue to replace deque
5c676deb55589e7f336647b60a4f2fed5fd15735 d0a569f5653dedc5af3797d9d26d57ce26f2bf61 2025-12-29T17:17:23+08:00 patrickyang Large update: add export macro for ABI stable and C/C++ compatible with extern C. Improve job engine performance
d0a569f5653dedc5af3797d9d26d57ce26f2bf61 8c35e5ca78d5e7db9ab3545e9d173a40150609f0 2025-12-29T17:09:22+08:00 patrickyang disable assert function. improve performance by reducing atomic ops
8c35e5ca78d5e7db9ab3545e9d173a40150609f0 a1a0173983a37b8adeddb0f9c2b2d1a84d88178b 2025-12-29T17:02:55+08:00 patrickyang implement unbalanced thread safe btree. improve thread-safe map try-get function performance
ed1eac8f2ee674e5bf80989271500056860e6a48 b73d76da9b8a9355bbce22f51d2dbf7b35baefcf 2025-12-25T10:23:08+08:00 patrickyang improve pcie driver performance for multi-threads env: Less mutex require
df1842115d1cde562a9f12a7b3ca41d34bcf1b0c abc38426e113fe16957c21c80ba7a8d513e36be4 2025-12-22T18:07:13+08:00 patrickyang disable tracer. Update configure workflow for dumping ini file
6de68570ba0106ec54f2ee02a5ec3bb5b51af527 fa244fe3764c2050bcb1a55dcca4507a55cd2bc8 2025-12-18T15:39:25+08:00 patrickyang disable trace to debug pld
2ef07a46f910fbc81798bd7da2ef965f8c92669b 64cd9d2e6d0533ac4446e9eec3712f1eed60200e 2025-12-18T14:53:38+08:00 patrickyang fix cli for trace log
64cd9d2e6d0533ac4446e9eec3712f1eed60200e f839d4bb436ab09e16255af21065cb50b269d277 2025-12-18T14:52:36+08:00 patrickyang update cli for trace log
95e1f8d7eb0c9fa45a0b2661d7dd4fe9384e32ab 2276ce96c1be01afb79c4d028144b027876209ad 2025-12-17T15:47:00+08:00 patrickyang fix crash issues caused by trace log for repair
2276ce96c1be01afb79c4d028144b027876209ad 3f81729524367cc7ed00fc30d5d7ed065642e189 2025-12-17T14:36:59+08:00 patrickyang update device-level log for thread-safe
d1577e8c50eae846a09cdf2d22df3a652646f148 077358a1993148cd759199dd1010d48d057f7e67 2025-12-17T11:14:16+08:00 patrickyang 1st version for process-safe and thread safe file io
077358a1993148cd759199dd1010d48d057f7e67 de9677369c5c56f4b34e89e0c62976e1ba11ba3b 2025-12-16T18:14:23+08:00 patrickyang add mutex for write log file
28275427a6afd0df7c653edeaba4f417428572d7 68b3d318e59f2ad054a6d7984b224578755ae3e9 2025-12-16T14:39:36+08:00 patrickyang update driver for atomic update device status
651c30277da33cfcccf54afd4a9c60a8101f297b 3b1dbf8613097c5af506858a9ddc35ff99fae2fb 2025-12-16T10:39:16+08:00 patrickyang improvement about device status for atomic op
3b1dbf8613097c5af506858a9ddc35ff99fae2fb 9f7d697a35aa94f508eb50827488ba4f4788bb75 2025-12-16T10:37:14+08:00 patrickyang update shm for atomic op
5e48b29b8e950c5a261f6aa4c9ed49cd374eaa57 adfc15ea9f96a6e2185131f4353ada7ee89cc66d 2025-12-16T09:50:04+08:00 patrickyang improve job engine performance
9d86d11a715fb05a3db72be5d0db351c792ec3c6 409efd4ac12b0a96bc1303fc5f6f54a7285df40f 2025-12-12T16:02:37+08:00 patrickyang debug for pld multi-threads
7f7a9442273a90f010d9e4bd2a11bfc482c33ef8 fa5f44f8cbf8b0db8229e6c738f6829630063ce1 2025-12-10T11:01:16+08:00 patrickyang disable worker threads for emulator. Disable sync function for emulator
3e7a6eb3a836152cc520659d887f4a44228d150d 698949be8ac59c15f3234f7197d365ac69fdff64 2025-12-08T14:11:28+08:00 patrickyang update logger for trace device under PLD MODE
54ad251493f9975fb52e4c3f930aff4b6e2266b5 c35b37b910cde49d75d88695872e629cefc70c2b 2025-12-03T17:57:20+08:00 patrickyang update logger for trace device usage
554671db59fa65872fdb15459c44dd85e6722d37 45b343a629065778b646dda13fb02062f01c782f 2025-11-26T16:31:44+08:00 patrickyang add flock for process-safe
e38e079581c27676aae8b9f371e8d0dc272a6563 f531f19bd43fef72c8583dd031fcd89da4c115a0 2025-11-20T14:35:46+08:00 ylsun using u32 instead of int32 to store jobid in job engine
ebdb30b320ad4a48a413c10b461df3c743ffd66d 4df3255451d51bdd217c58d73e2b21cd38fb4067 2025-11-12T15:08:57+08:00 patrickyang update Device Manager. support robust, shm repair and avoid deadlock
d831a6025febb578a6fc32dc0569e42204c11e06 b3a939c9e85acab4bfed8f3ce45700d530bf6e33 2025-11-10T11:27:52+08:00 patrickyang update IPC for mutex restore when process killed
897156b46ffed9e914cff53d0b8f61cbce62a027 321da3e562974471bf50af7a5650f1dd60f8e50b 2025-11-06T15:00:39+08:00 patrickyang update python blocking infer
38bb39104982540996d8b75a7215f7b2b1e1ffbf 5ba82cad9463b59f01b4da67ffffecd27e505242 2025-07-16T16:33:50+08:00 patrickyang provide better example org. Implement thread safe calrt check mechanism. Improve a little compiling eff
19a4d49e34dcf9c6f6ecddb17dd4fda75cb68fdd 103477d066967882d99907d7b23df1645015a367 2025-07-16T10:11:48+08:00 patrickyang re-write cmakelist. update job queue check function
76bcd03bf7710451290136fff603600be8833fb0 ab9337b567947cc11d6f756d80a7942216eeb281 2025-06-11T10:29:27+08:00 patrickyang try mutex instead of atomic
87623c2ebbd7ece7c7db6a945a86fa03a7114913 aa234409e8731726c6b188a88c8b05ef3eb1b57d 2025-06-11T09:09:55+08:00 patrickyang [Do not pull]TEST ONLY. try to fix job id issues
aa234409e8731726c6b188a88c8b05ef3eb1b57d ca664598f16697aa1096961cf879c5ead891ed98 2025-06-10T18:29:15+08:00 patrickyang fix main multi-threads bug
ca664598f16697aa1096961cf879c5ead891ed98 6d52cd0dae0f99671c37058c019a0dc02dbc1112 2025-06-10T17:35:21+08:00 patrickyang fix atomic op bug
6d52cd0dae0f99671c37058c019a0dc02dbc1112 142f5f3b142336d4458777a8649cc02b308f4ebd 2025-06-10T17:29:13+08:00 patrickyang fix atomic op bug
142f5f3b142336d4458777a8649cc02b308f4ebd 6511a9d1b82c5e0cfe7d34df0f6d9f524d9ef67b 2025-06-10T16:54:53+08:00 patrickyang update job engine
6511a9d1b82c5e0cfe7d34df0f6d9f524d9ef67b fbc49d880e544c73bc789c1b66c4ba9534ffca99 2025-06-09T15:07:32+08:00 patrickyang fix job engine bug, triggering sync issues under multi-threads env
e934463f0408e2a238ce88d423cbc0bffadb0d1f 3f1bc91d92b5bec94e0500232d9d314bdc8ddec4 2025-06-04T12:06:49+08:00 patrickyang remove unused mutex. add more log msg
dbfdb3da8d269f1927c2ffe7c5ed694ffd1bd424 a0f9e78090831821676669bffe968123399ede20 2025-04-16T16:00:58+08:00 patrickyang support shard thread safe map for high volumn concurrent or multi-thread performance
a0f9e78090831821676669bffe968123399ede20 cf943662338348b240d900c477016adee1d824df 2025-04-16T16:00:20+08:00 patrickyang support PCIE multi-channels with thread safe
bacc578dbfeaa2e2c558b9905aff547810aefae4 7304485b61ef1118cabc91e0625581686aa15f0a 2025-04-15T17:16:37+08:00 patrickyang update multi-threads log logic
92a46765b5bc32394e3473df56fcf45d6c6ab112 ed8bc3cd2b0e65452b236d5480217d106ebbce29 2025-04-15T12:05:36+08:00 patrickyang add reserved mem info recorder. Add thread safe for multi-threads allocate mem. improve log system during parsing calbin and deploy. Implement callback function in Job class to release sync unit
ed8bc3cd2b0e65452b236d5480217d106ebbce29 7b973a695ac7eb756efec5511eb3ea399d500018 2025-04-14T16:40:24+08:00 patrickyang add thread safe for PCIE rd/wr
3b9814abc83fd0f4c115ec4b36164bfcecfa54df ba2a86d8dd3085274184b801c2cde049b6ffd036 2025-04-11T17:36:12+08:00 patrickyang update RAII for thread safe container. And notify for sendjob thread to stop working
58634c589d30870f0bc6012bc9ef282858f60a25 e784105634dcbd6da3adbfb8dd00de67bb244ecf 2025-04-11T15:48:28+08:00 patrickyang update job engine to new thraed safe container
e56664b044ab808dea2194f731e8afa700438a39 70b5ab1e964ef20a23ac5a595d274c1595a8a89a 2025-04-11T13:49:17+08:00 patrickyang implement thread safe map
26d834f71635469b2e0284d2c22f3e63e24c3915 8832c074563cce8b6922229879a4f2e94742b96c 2025-04-09T16:25:38+08:00 ylsun Revert "Revert "[Do Not Update to mchp repo].fix multi thread bugs causing unable consequntly infer and get result""
8832c074563cce8b6922229879a4f2e94742b96c 814cbd422edbc4491d2cb9fe5acc551a4722325b 2025-04-09T16:16:11+08:00 ylsun Revert "[Do Not Update to mchp repo].fix multi thread bugs causing unable consequntly infer and get result"
814cbd422edbc4491d2cb9fe5acc551a4722325b 5d658b2b36228fa084dff24139fc2571ce506359 2025-04-09T14:39:14+08:00 patrickyang [Do Not Update to mchp repo].fix multi thread bugs causing unable consequntly infer and get result
646eaef7383175c14fd7944c6490773940d78103 cb0f29d456a64e0913facee884948292547c1f8b 2025-04-02T15:50:36+08:00 ylsun update push job start queue generate
eda04f64a76defe9f5b1e15f04e623cd7ca0cbce aa45692d886823173d547ed60dd1f4d8fb4fd86d 2025-03-31T11:26:51+08:00 patrickyang add shutdown to job engine destructor. remove get allocator function. add constrain during parsing calbin
27a978ae9743cbf6222ff025a4e96444c629fd24 2f0e0d67ff7a4960c5210324e2cb7e55ba95176a 2025-03-31T10:05:41+08:00 ylsun update job id
37b0070493f5d55366a78486c07e10cf8a14e429 aa45692d886823173d547ed60dd1f4d8fb4fd86d 2025-03-28T19:35:04+08:00 wantaobo update inferLauncher push job queue
00b68bfa9c5dc4977ee4b8db2c399d12ed7ed749 3110c8b875481630d761435fb367343bbe4d9719 2025-03-25T11:46:28+08:00 ylsun add condition variable to control waiting job done thread start
c5afcc23bcc38b08e7d5e559008f6455aec1b66c 6db45810ceacb91ff3f7ea5ca098d51c167e802d 2025-03-19T16:01:20+08:00 ylsun add job engine
f96d5d691e6b64f1c3f358cab90a76176de8be96 b7d22adee6ea157135b0b69f0dd16e8974151965 2025-03-13T15:54:33+08:00 patrickyang support push job start queue and poll job end queue
b38237a36058f74b8320691c81029e8e23477976 445e2814d0894e2441af1e8136d5ddbf12f2069d 2025-03-06T17:39:32+08:00 patrickyang [thread] improve thread safe
bfd461bf1a0aee1306eb4d3509623effd4a69bb0 411552190b01854f978292f9e360f880803c934b 2025-02-24T17:09:01+08:00 patrickyang [job engine] provide push job q and poll job q interface
b8561e87f309f107328af7af2da4c25fde4382cf 80e2aacafbd7fa2e7cfaeb971082ab961d78a7e6 2025-01-16T16:48:55+08:00 patrickyang update calrt data struct; ping-pong sw queue