[Development] QStringLiteral vs QLatin1String , foreach vs for range

Thiago Macieira thiago.macieira at intel.com
Tue Jan 19 17:13:48 CET 2016


On Tuesday 19 January 2016 09:50:37 Gunnar Roth wrote:
> Thank you Thiago.
>  
> Actually I meant ucomparing a QString with a QStringLiteral when i said
> " both strings being uft16 seems to be faster ".
> So what i learned now on an x85 with avx support is should be no performance
> problem. 

We also have SSE2 code which should provide similar performance, but not 
better since the unpacking code is more expensive than the one AVX2 
instruction that loads and zero-extends.

> But what about a wec2013 with arm, as qt does not support neon for
> wec2013.

I don't do benchmarks for ARM. That said, Erik and Allan have been re-writing 
some of my vector code from SSE2 to Neon and are contributing the code to the 
dev branch. Some of the functionality is possible only in AArch64 due to the 
lack of one single instruction corresponding to SSE2's PMOVMSKB in 32-bit 
mode. That includes the string-compare code.

> Qt does not even support sse2 for wec because configureap.cpp does
> always reset sse2 to no, even if i pass it to configure. 

Probably because whoever wrote that part of configureapp.cpp assumed that it 
would always be ARM.

> Same as the
> openssl problem, which was solved in dev
> branch. https://codereview.qt-project.org/#/c/122437/ 

Right.

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center




More information about the Development mailing list