Re: [eigen] matrix::linspace

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Please ignore the last patch. It's buggy and I am working on a
solution. If you already wasted time, trying it out - sorry.

- Hauke

On Sun, Jan 24, 2010 at 10:54 PM, Hauke Heibel
<hauke.heibel@xxxxxxxxxxxxxx> wrote:
> On Sun, Jan 24, 2010 at 8:16 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
>> 2010/1/24 Hauke Heibel <hauke.heibel@xxxxxxxxxxxxxx>:
>>> which is nice and reasonable. So, MSVC has an optimization issue over
>>> here. In my particular case, the unaligned cases are anyways empty and
>>> skipping them does not hurt.
>>
>> This could then be quite far reaching: this path in Assign.h is used
>> for much more than just this particular functor, so this is really
>> worth understanding and fixing / working around!
>
> I don't really understand what is going on nor why it is. I can tell
> that the ASM code is different and not optimal but I do not know
> exactly why. With some tinkering, I was able to create a fix which you
> find attached.
>
> In short, it does the following. The unaligned paths are once more
> wrapped into a proxy object which is specialized for cases where the
> unaligned path is non-existent (of zero length). We can make use of it
> in some cases, in particular, when the destination is aligned which we
> do already know at compile time. That approach allows MSVC to perform
> the correct optimization.
>
> I did not push since it's quite a low-level modification.
>
> - Hauke
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/