@@ -5,6 +5,9 @@ How ready is MicroPython for use in a TinyML setting.
5
5
6
6
Completely broken on at least one port, due to being garbage collected.
7
7
8
+ Using floating point / math operations is difficult / very tedious.
9
+ Need to manually resolve all symbols.
10
+ https://github.com/micropython/micropython/issues/5629
8
11
9
12
## Efficient data processing
10
13
@@ -21,13 +24,19 @@ Native machine code emitters with @micropython.native/viper
21
24
Good! Integer only code can be made quite fast with
22
25
Limitation. Floating point code cannot be optimized with @micropython .native
23
26
24
- Inefficient conersion from bytes to array.array?
27
+ Inefficient conversion from bytes to array.array?
28
+ ! Missing a "cast" type operation.
25
29
When data comes an IMU/accelerometer over I2C/SPI it is just bytes.
26
30
However these actually represent integer values, typically int16,
27
31
stored in either little or big endian formats.
28
32
TODO: benchmark the various options here.
29
33
Plain buffer/array accesses vs struct.unpack / unpack_into
30
34
35
+ !Inefficient creation of array.array
36
+ Must use a generator-based constructor - the only type that is standardized.
37
+ This can take seconds for many items.
38
+ Would want to initialize , or initialized filled with a particular value.
39
+
31
40
Semi-related. Encoding base64 cannot be done without allocations. LINK issue
32
41
Useful for serializing binary data for sending in textual protocols.
33
42
Be it USART, JSON based web API, etc.
0 commit comments