[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-kimageshop
Subject:    Krita brush mask AVX Optim, Unit test scalar vs vectorized.
From:       Iván_Yossi <ghevan () gmail ! com>
Date:       2018-04-28 4:43:05
Message-ID: aa19dbc9-22f4-4c15-9005-168e451d7395 () Spark
[Download RAW message or body]

Hi!

I've been working on the unit test for comparing both scalar and vectorized mask. I \
create a mask and convert it to an image to later compare pixel by pixel to ensure \
the mask is within the error limit.

The patch along side the first Gauss AVX optimization is here
https://phabricator.kde.org/P200

I'm not sure if the way I implemented it is the recomended way as I force the use of \
scalar by initialiazing the brush with 3 spikes. The names I used for variables, I'm \
mostly sure I adhere to the naming convention but I probably skip something. This \
test generates an image of the masks for visual aid, I made it this way so i could \
asses if the difference is visually detectable while in production to fine tune the \
error.

The current test will pass for the Default Brush and Fail for the GaussBrush as it \
uses my dummy vectorized code. However it should pass if only the test is integrated \
as both mask would be generated using the scalar process.

I reach to you for any advice and recommendation to make the test more robust.

Thanks!


Iván Yossi
<ghevan@gmail.com>
IRC: ivanyossi


[Attachment #3 (text/html)]

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<div name="messageBodySection" style="font-size: 14px; font-family: -apple-system, \
BlinkMacSystemFont, sans-serif;">Hi! <div><br /></div>
<div>I've been working on the unit test for comparing both scalar and vectorized \
mask. I create a mask and convert it to an image to later compare pixel by pixel to \
ensure the mask is within the error limit.</div> <div><br /></div>
<div>The patch along side the first Gauss AVX optimization is here</div>
<div><a href="https://phabricator.kde.org/P200">https://phabricator.kde.org/P200</a><br \
/></div> <div><br /></div>
<div>I'm not sure if the way I implemented it is the recomended way as I force the \
use of scalar by initialiazing the brush with 3 spikes. The names I used for \
variables, I'm mostly sure I adhere to the naming convention but I probably skip \
something. This test generates an image of the masks for visual aid, I made it this \
way so i could asses if the difference is visually detectable while in production to \
fine tune the error.</div> <div><br /></div>
<div>The current test will pass for the Default Brush and Fail for the GaussBrush as \
it uses my dummy vectorized code. However it should pass if only the test is \
integrated as both mask would be generated using the scalar process.</div> <div><br \
/></div> <div>I reach to you for any advice and recommendation to make the test more \
robust.</div> <div><br /></div>
<div>Thanks!</div>
<div><br /></div>
</div>
<div name="messageSignatureSection" style="font-size: 14px; font-family: \
-apple-system, BlinkMacSystemFont, sans-serif;"><br /> Iván Yossi
<div>&lt;ghevan@gmail.com&gt;</div>
<div>IRC: ivanyossi</div>
<div><br /></div>
</div>
</body>
</html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic