PINE64
RK3399 question - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: ROCKPRO64 (https://forum.pine64.org/forumdisplay.php?fid=98)
+--- Forum: General Discussion on ROCKPRO64 (https://forum.pine64.org/forumdisplay.php?fid=99)
+--- Thread: RK3399 question (/showthread.php?tid=7694)



RK3399 question - enip - 07-12-2019

RK3399 is 2xA72 + 4xA53. Can I use all six cores simultaneously or is it either 2xA72 or 4xA53 at a time? E.g. can I encode with ffmpeg utilizing all six cores?


RE: RK3399 question - z4v4l - 07-12-2019

every core is on its own, you can use them all simultaneously; given the software in question knows what's multithreading.


RE: RK3399 question - enip - 07-16-2019

Here is a quote from https://en.wikipedia.org/wiki/ARM_big.LITTLE

Quote:ARM big.LITTLE is a heterogeneous computing architecture developed by ARM Holdings, coupling relatively battery-saving and slower processor cores (LITTLE) with relatively more powerful and power-hungry ones (big). Typically, only one "side" or the other will be active at once, but all the cores have access to the same memory regions, so workloads can be swapped between Big and Little cores on the fly.


Are you 100% sure about rk3399 or was it some general considerations or yours?


RE: RK3399 question - z4v4l - 07-16-2019

notice that "typically". basically, those who wrote that felt it's the "right" way of using them. but given all cpus are independent, they may be used independently. i don't have rockpro, but i am sure, linux uses them exactly like i said - independently. or at least it can be configured to use them like that. also you can assign a thread to run only on big or little cores. there is no any prevention in the hardware to use all 6 cores, trust me.


RE: RK3399 question - t4_4t - 07-17-2019

His (z4v4l) insistence is right.
When referring to the following log, you'd be able to understand that his insistence is right.

$ ffmpeg -i bbb-1920x1080-cfg06.mkv bbb-1920x1080-cfg06.mp4

Code:
top - 15:30:09 up  6:50,  2 users,  load average: 9.14, 6.72, 3.19
Tasks: 256 total,   1 running, 255 sleeping,   0 stopped,   0 zombie
%Cpu0  : 32.6 us,  1.0 sy, 66.1 ni,  0.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  : 30.7 us,  1.0 sy, 67.6 ni,  0.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu2  : 32.5 us,  0.3 sy, 66.6 ni,  0.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu3  : 28.1 us,  0.7 sy, 70.3 ni,  1.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu4  : 42.6 us,  0.7 sy, 56.4 ni,  0.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu5  : 43.6 us,  0.3 sy, 55.1 ni,  1.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  3967380 total,    12188 free,  1188972 used,  2766220 buff/cache
KiB Swap:  1983672 total,  1983672 free,        0 used.  2663376 avail Mem

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
22283 rock64    20   0 1518032 677920  28648 R 594.1 17.1 133:47.28 ffmpeg
23150 rock64    20   0    8564   3364   2696 R   1.3  0.1   0:00.81 top
...

* Cpu0<->Cpu3: Cortex-A53, Cpu4<->Cpu5: Cortex-A72


RE: RK3399 question - enip - 07-17-2019

Thanks guys! So rockpro is still superior to 4xA72 in raspi4.


RE: RK3399 question - stuartiannaylor - 07-20-2019

(07-17-2019, 05:58 AM)enip Wrote: Thanks guys! So rockpro is still superior to 4xA72 in raspi4.

Rockpro64 is approx 20-30% faster due to higher clock speed even if dual core 2xA72 in an octocore package with 4xa53

Its the GPU of the Pi4 VC4 that really lags by approx 200% in OpenGL which is absolutely huge.