kasjer commented on PR #3365: URL: https://github.com/apache/mynewt-core/pull/3365#issuecomment-2686437363
This time I did not look at the code just tested it on the entirely full fcb log on 1MB spi flash with 6 absolute bookmarks. It seems that after 6 walks sector bookmark are no longer used here are some output from log console ``` compat> log -b test_log 0: index:0 entry: 20007d28 fa: 0 fe_elem_off: 0 017947 1: index:68837 entry: 20007d44 fa: 2000713c fe_elem_off: 2c ... 018263 250: index:15108 entry: 20009880 fa: 20007184 fe_elem_off: a5 018265 251: index:13154 entry: 2000989c fa: 20007178 fe_elem_off: 2b 018266 252: index:11764 entry: 200098b8 fa: 2000716c fe_elem_off: 2b 018267 253: index:10262 entry: 200098d4 fa: 20007160 fe_elem_off: 2a 018269 254: index:8819 entry: 200098f0 fa: 20007154 fe_elem_off: 8 018270 255: index:0 entry: 2000990c fa: 0 fe_elem_off: 0 018271 256: index:0 entry: 20009928 fa: 0 fe_elem_off: 0 018272 257: index:0 entry: 20009944 fa: 0 fe_elem_off: 0 018273 258: index:0 entry: 20009960 fa: 0 fe_elem_off: 0 018275 259: index:0 entry: 2000997c fa: 0 fe_elem_off: 0 018275 260: index:0 entry: 20009998 fa: 0 fe_elem_off: 0 ``` Last 6 elements are for absolute bookmarks I guess Now command to measure time of walking 2 entries from index (visible in sector bookmarks) ``` compat> log -i 10262 -n 2 -t test_log 253519 Log test_log 2 entries walked in 83 ms compat> log -b test_log 362773 0: index:0 entry: 20007d28 fa: 0 fe_elem_off: 0 362774 1: index:68837 entry: 20007d44 fa: 2000713c fe_elem_off: 2c ... 363093 252: index:11764 entry: 200098b8 fa: 2000716c fe_elem_off: 2b 363094 253: index:10262 entry: 200098d4 fa: 20007160 fe_elem_off: 2a 363096 254: index:8819 entry: 200098f0 fa: 20007154 fe_elem_off: 8 363097 255: index:10262 entry: 2000990c fa: 20007160 fe_elem_off: 2a <------------ Duplicate 363098 256: index:0 entry: 20009928 fa: 0 fe_elem_off: 0 363099 257: index:0 entry: 20009944 fa: 0 fe_elem_off: 0 363100 258: index:0 entry: 20009960 fa: 0 fe_elem_off: 0 363102 259: index:0 entry: 2000997c fa: 0 fe_elem_off: 0 363103 260: index:0 entry: 20009998 fa: 0 fe_elem_off: 0 ``` Now duplicate entry is present in absolute bookmark space (previously it was not the case) This time measure walk time from index 50010 which also is present in sector bookmarks ``` compat> log -i 50010 -n 2 -t test_log 571519 Log test_log 2 entries walked in 32 ms compat> log -b test_log 685500 0: index:0 entry: 20007d28 fa: 0 fe_elem_off: 0 685501 1: index:68837 entry: 20007d44 fa: 2000713c fe_elem_off: 2c ... 685611 88: index:50170 entry: 200086c8 fa: 2000791c fe_elem_off: 2b 685612 89: index:50010 entry: 200086e4 fa: 20007910 fe_elem_off: 2a 685614 90: index:49888 entry: 20008700 fa: 20007904 fe_elem_off: 2a ... 685821 253: index:10262 entry: 200098d4 fa: 20007160 fe_elem_off: 2a 685823 254: index:8819 entry: 200098f0 fa: 20007154 fe_elem_off: 8 685824 255: index:10262 entry: 2000990c fa: 20007160 fe_elem_off: 2a <--- Both were present in sector bookmarks 685825 256: index:50010 entry: 20009928 fa: 20007910 fe_elem_off: 2a <--- 685827 257: index:0 entry: 20009944 fa: 0 fe_elem_off: 0 685828 258: index:0 entry: 20009960 fa: 0 fe_elem_off: 0 685829 259: index:0 entry: 2000997c fa: 0 fe_elem_off: 0 685830 260: index:0 entry: 20009998 fa: 0 fe_elem_off: 0 ``` Walk is fast as expected Next few walks without hitting sector bookmark ``` compat> log -i 30000 -n 2 -t test_log 926885 Log test_log 2 entries walked in 528 ms compat> log -i 20000 -n 2 -t test_log 964547 Log test_log 2 entries walked in 252 ms compat> log -i 10000 -n 2 -t test_log 969795 Log test_log 2 entries walked in 114 ms compat> log -i 15000 -n 2 -t test_log 979476 Log test_log 2 entries walked in 117 ms compat> log -i 11000 -n 2 -t test_log 986830 Log test_log 2 entries walked in 21 ms compat> log -i 12000 -n 2 -t test_log 994202 Log test_log 2 entries walked in 26 ms compat> log -i 13000 -n 2 -t test_log 997642 Log test_log 2 entries walked in 29 ms compat> log -b test_log 1102179 0: index:0 entry: 20007d28 fa: 0 fe_elem_off: 0 1102180 1: index:68837 entry: 20007d44 fa: 2000713c fe_elem_off: 2c ... 1102506 254: index:8819 entry: 200098f0 fa: 20007154 fe_elem_off: 8 1102507 255: index:11000 entry: 2000990c fa: 20007160 fe_elem_off: 8cc 1102508 256: index:12000 entry: 20009928 fa: 2000716c fe_elem_off: 350 1102510 257: index:13000 entry: 20009944 fa: 2000716c fe_elem_off: ea9 1102511 258: index:20000 entry: 20009960 fa: 200071a8 fe_elem_off: 882 1102513 259: index:10000 entry: 2000997c fa: 20007154 fe_elem_off: cc8 1102514 260: index:15000 entry: 20009998 fa: 20007184 fe_elem_off: a5 ``` Times seems to vary depending on index, grater index -> slower walk Now all absolute bookmarks are there plus 255 sector ones Measure time for walking 2 entries starting from index 50000 ``` compat> stat spiflash 1228621 read_count: 19885 1228621 write_count: 4 1228622 erase_count: 0 1228622 error_count: 0 1228623 read_bytes: 215750 1228623 written_bytes: 157 compat> log -i 50000 -n 2 -t test_log 1256664 Log test_log 2 entries walked in 5869 ms compat> stat spiflash 1259963 read_count: 96353 1259963 write_count: 4 1259964 erase_count: 0 1259964 error_count: 0 1259965 read_bytes: 1159963 1259965 written_bytes: 157 ``` And here is measurements when sector bookmarks are off, this is single session ``` compat> log -i 50000 -n 2 -t test_log Log test_log 2 entries walked in 67 ms compat> log -i 10000 -n 2 -t test_log 030365 Log test_log 2 entries walked in 113 ms compat> log -i 20000 -n 2 -t test_log 033948 Log test_log 2 entries walked in 101 ms compat> log -i 30000 -n 2 -t test_log 037504 Log test_log 2 entries walked in 101 ms compat> log -i 40000 -n 2 -t test_log 041646 Log test_log 2 entries walked in 80 ms compat> log -i 10000 -n 2 -t test_log 046245 Log test_log 2 entries walked in 114 ms compat> log -i 50000 -n 2 -t test_log 054318 Log test_log 2 entries walked in 66 ms compat> log -i 10000 -n 2 -t test_log 061018 Log test_log 2 entries walked in 114 ms compat> log -i 11000 -n 2 -t test_log 065112 Log test_log 2 entries walked in 104 ms compat> log -i 13000 -n 2 -t test_log 067719 Log test_log 2 entries walked in 120 ms compat> log -i 14000 -n 2 -t test_log 070770 Log test_log 2 entries walked in 110 ms compat> log -i 15000 -n 2 -t test_log 073969 Log test_log 2 entries walked in 83 ms compat> log -i 16000 -n 2 -t test_log 078615 Log test_log 2 entries walked in 107 ms compat> log -i 50000 -n 2 -t test_log 083399 Log test_log 2 entries walked in 66 ms ``` Without sector bookmarks (absolute bookmarks are enabled) timing seems reasonable. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
