<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">Hi Joerg,</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">​</span><span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">​No, this is a braindead test. Our results are pretty consistent with ours and that's why we excluded
 one from the regression loop. <br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">The return value was fixed just because I was fixing it everywhere
<span class="VIiyi" lang="en"><span class="JLqJ4b ChMk0b" data-language-for-alternatives="en" data-language-to-translate-into="ru" data-phrase-index="0" data-number-of-phrases="1"><span>wherever it caught my eye</span></span></span>
<span id="🙂">🙂</span><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">-Bogdan</span><br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Joerg Vehlow <lkml@jv-coder.de><br>
<b>Sent:</b> Friday, November 12, 2021 14:07<br>
<b>To:</b> Bogdan Lezhepekov <bogdan.lezhepekov@suse.com>; ltp@lists.linux.it <ltp@lists.linux.it><br>
<b>Subject:</b> Re: [LTP] [PATCH v1] realtime:matrix_multi: main function to return exit status</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Hi,<br>
<br>
is the test even returning any valid results anywhere?<br>
I don't know if systems are running too fast for the test nowadays,<br>
but in my tests, they always divide by 0, even with very high iteration <br>
counts even in qemu.<br>
<br>
e.g:<br>
<br>
$ matrix_mult -i10000000<br>
<br>
---------------------------------------<br>
Matrix Multiplication (SMP Performance)<br>
---------------------------------------<br>
<br>
Running 10000000 iterations<br>
Matrix Dimensions: 100x100<br>
Calculations per iteration: 8<br>
Number of CPUs: 4<br>
<br>
Running sequential operations<br>
Min: 0 us<br>
Max: 160 us<br>
Avg: 0.0000 us<br>
StdDev: 0.2082 us<br>
<br>
Running concurrent operations<br>
Min: 0 us<br>
Max: 1693 us<br>
Avg: 0.0000 us<br>
StdDev: 0.6652 us<br>
<br>
Concurrent Multipliers:<br>
Min: -nan<br>
Max: 0.0945<br>
Avg: -nan<br>
<br>
Criteria: 3.00 * average concurrent time < average sequential time<br>
Result: FAIL<br>
<br>
<br>
<br>
If this is not a result of my test system, we should probably remove the <br>
test from the<br>
profile, at least as long as it was not fixed.<br>
<br>
Joerg<br>
<br>
<br>
On 9/13/2021 5:31 PM, Bogdan Lezhepekov via ltp wrote:<br>
> The original version always returned 0.<br>
><br>
> Signed-off-by: Bogdan Lezhepekov <bogdan.lezhepekov@suse.com><br>
> ---<br>
>   testcases/realtime/func/matrix_mult/matrix_mult.c | 10 +++++-----<br>
>   1 file changed, 5 insertions(+), 5 deletions(-)<br>
><br>
> diff --git a/testcases/realtime/func/matrix_mult/matrix_mult.c b/testcases/realtime/func/matrix_mult/matrix_mult.c<br>
> index 61ab887fc..e702c0ff9 100644<br>
> --- a/testcases/realtime/func/matrix_mult/matrix_mult.c<br>
> +++ b/testcases/realtime/func/matrix_mult/matrix_mult.c<br>
> @@ -188,7 +188,7 @@ void *concurrent_thread(void *thread)<br>
>        return NULL;<br>
>   }<br>
>   <br>
> -void main_thread(void)<br>
> +int main_thread(void)<br>
>   {<br>
>        int ret, i, j;<br>
>        nsec_t start, end;<br>
> @@ -308,7 +308,7 @@ void main_thread(void)<br>
>             criteria);<br>
>        printf("Result: %s\n", ret ? "FAIL" : "PASS");<br>
>   <br>
> -     return;<br>
> +     return ret;<br>
>   }<br>
>   <br>
>   int main(int argc, char *argv[])<br>
> @@ -319,7 +319,7 @@ int main(int argc, char *argv[])<br>
>        numcpus = sysconf(_SC_NPROCESSORS_ONLN);<br>
>        /* the minimum avg concurrent multiplier to pass */<br>
>        criteria = pass_criteria * numcpus;<br>
> -     int new_iterations;<br>
> +     int new_iterations, ret;<br>
>   <br>
>        if (iterations <= 0) {<br>
>                fprintf(stderr, "iterations must be greater than zero\n");<br>
> @@ -348,7 +348,7 @@ int main(int argc, char *argv[])<br>
>        printf("Number of CPUs: %u\n", numcpus);<br>
>   <br>
>        set_priority(PRIO);<br>
> -     main_thread();<br>
> +     ret = main_thread();<br>
>   <br>
> -     return 0;<br>
> +     return ret;<br>
>   }<br>
<br>
</div>
</span></font></div>
</body>
</html>