Open main menu

DAVE Developer's Wiki β

Changes

no edit summary
{{Applies To Bora}}
{{Applies To BoraX}}
{{AppliesToBORA_TN}}
{{AppliesToBORA_Xpress_TN}}
{{InfoBoxBottom}}
|[[Bora_Embedded_Linux_Kit_(BELK)#BELK_software_components|3.0.0]]
|Internal draft
|-
|1.0.0
|November 2015
|[[Bora_Embedded_Linux_Kit_(BELK)#BELK_software_components|2.2.0, 3.0.0]]
|First public release
|-
|}
About Linux side, two load conditions have been considered:
** idle** Google stressapptest (SAT for short) <ref name="SAT">https://code.google.com/p/stressapptest/"</ref> running to stress SDRAM memory and SD I/O.
About RTOS side:
** idle** memory intensive task; two subcases, in turn, have been considered to evaluate the impact of the L2 cache unavailability.
The RTOS memory task access an array in main memory of two different sizes:
==Conclusions and future work==
As result The following conclusions can be drawn from those the test we can say thatresults:* Real-timeness of W1 realm is preserved in any condition, since Linux activity on CPU/memory/SD does not virtually has no influence on RTOS latency.* minimal Moderate RTOS activity have has no impact on latency.* a bigger RTOS activityAs expected, in this case on main intensive memory, have some impact activity is performed on latencyRTOS side, mainly the ARM core observe more L1 data/instruction cache miss on both data and instructions===Isolation vs performances===This work confirmed the need to find a trade-off between two requirements that often push misses increase significantly resulting in opposite directions: isolation and performances. On one hand isolation should be pushed to the maximum possible extent to preserve the integrity of W1 world. On the other hand, overall systems performances have not to be affected so much that the product gets unusable. Generally speaking, strong isolation negatively impacts performances, so finding the optimal balancing is not trivial. A "one size fits all" solution does not exist and system designer is responsible to choose which direction this knob has to be moved. This analysis naturally has to take into account application-specific requirementshigher latency.
===Future work===
Future work will first focus on an additional feature that has not been included in the requirement list but that is undoubtedly useful in several applications. We are referring to the possibility of performing a complete reboot of the GPOS under the control of the RTOS, while this keeps operating normally. For instance this can be exploited when the RTOS needs to work as software watchdog for W2 activity: in case no activity is detected for a certain period of time, GPOS can be shutdown and rebooted.
Another aspect that should be investigated in more depth refers to the effects of the communication between W1 and W2 on the IRQ latency and the integrity of the real-time world. This matter is strictly related to the degree of isolation between the two worlds. In this work a strong-isolation approach has been adopted, meaning that
*no data is exchanged during the execution of the IRQ latency measurement
*it has been implicitly assumed that data sent from W2 to W1 can not compromise the integrity of the trust domain.
These assumption may be not verified in real applications, however specific techniques can be implemented to manage these situations (see for example <ref name="Sangorrin's thesis"></ref> and <ref name="PreventingInterruptOverload">J. Regehr, U. Duongsaa, ''Preventing Interrupt Overload'', 2nd May 2005, http://www.cs.utah.edu/~regehr/papers/lctes05/regehr-lctes05.pdf</ref>).
-----
{{notelist}}
8,204
edits