I wonder why crash problem occurs when my application is running.


When I did not know how to raise clock speed (using nvpmodel, jetson-clocks)
I have used the skill which assigns each thread to run on the certain cpu core (using pthread_setaffinity_np api).
I think the skill had some better result in my application than when not used.

When I used this skill in TX2 platform, there was no problem, but
now in Xavier platform, there often occurs ubuntu error popup window (crash).

When not using the skill, no problem.

Now because we can raise clock, the skill is not needed any longer, but I wonder the following things.

From attached crash files (/var/crash) could you tell me the reason of the problem?

From web search, I remember as follows about using pthread_setaffinity_np skill.
The auto scheduling method (as default) has more effective, optimal performance.
but the performances may vary more or less when the test is tried many times.

In case of using the manual cpu assignment skill, the performance is worse, but we can have the consistent result.

Do you have any idea or opinion(recommendation or not) about this skill?

Thank you in advance.

Johnny K. Jeong
crash.zip (5.47 KB)

I can’t answer, but I don’t see a backtrace/stack dump, so you might see if the “summary” information given has something more detailed in addition to what is in the crash.zip. It does seem like it is some sort of race type issue, so you might mention if you have any modifications or patches to either the kernel or the device tree (including extra drivers or any kernel configuration change).