This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM335x very slow with Linux SDK 3.01 RT

We have built our AM335x based system using TI SDK 7.0 with some upgrades, and it has worked reasonably well.

However, one thing we found is that if I have the cryptodev module loaded, the system will leak memory.

So I am trying to see if we can get more updated cryptodev driver with the new Processor SDK 3.01, and I chooses the RT version since I don't have to add the RT patch myself.

However, after I built our application for the new SDK, it works, but was extremely slow.The web page load become a slow motion (It takes five seconds a load a json file)

I noticed that the systemd and ktimersoftd are using a lot of CPU

Any comments?

  • The software team have been notified. They will respond here, but there may be a delay due to holidays in the USA.
  • I want to confirm that you are using the PLSDK version 3.01.00.06.

    Have you been able to reproduce the issue on a TI EVM?

    Other than your application is there anything else that is running?

  • Schuyler,

    Yes, I am using the latest PLSDK 3.01.00.06.

    I don't have access to TI EVM, and I am running this on a Beaglebone Green.

    We have an few Linux executable developed based on TISDK 7.0, and I have recompiled them using the new tool-chain.

    The web server is nodejs. We cross-compiled it on the TISDK 7.0, but used the one shipped with 3.01.00.06 in the new build.

    I noticed even the login from the console takes a long time to process, where in the old SDK, it is very fast.

  • I don't have a beaglebone green, all I have is beaglebone black. There was a change from sysvinit to systemd which is why there is a change.
    Does the ktimer still use a lot of the system if you are not accessing the web server?
    While it is not the same I will setup a beagle bone black with the SDK you are using.
  • I tried a Beagle Bone Black with the latest RT SDK and I did not see an issue in terms of slowness. I ran iperf at 50Mbps and cyclictest as background processes and did not see abnormal processor loading.  This really simple test probably does not compare to your app, but it at least shows out of the box the system is behaving somewhat normally.

    One thing to consider since you are using the RT kernel the system will be running the RT threads before SCHED_NORM user level tasks. You might try changing the policy of the server or app to use one of the RT policies such as SCHED_FIFO or SCHED_RR.