> I noticed the post is 5+ years old, has it been tested > on (modern) Fedora and does it still work with modern versions of Kubuntu?
I haven't tested it myself recently and I have no idea whether it works with current versions of Ubuntu or whether it ever worked on Fedora. Regards, Rob. On 31 October 2013 15:52, Jiergir Ogoerg <f35f22...@gmail.com> wrote: > Great, of course you're a much better/smarter programmer than me, > but how much time of the whole parsing and loading > (which is done line by line which is slow) does fromUtf8() > take? If it's only like 10-20% then even if it's optimized to work 10 times > faster in the end it's a much smaller improvement compared to > binary loading which almost doesn't do any parsing at all, just copying > from disk onto ready memory. > If the total parsing time after your optimizations > is still like 2x+ times slower than loading the binary cache then imo > your optimizations should be incorporated anyway for the > (rare) cases when there's no (binary) cache yet or when it must be updated. > > The type of code (in a loop) I mentioned which features lots of other > decoding/operations > besides fromUtf8(): > > char l[1024]; > // formating of compose.dir has some inconsistencies > while (!mappings.atEnd()) { > int read = mappings.readLine(l, sizeof(l)); > if (read <= 0) > break; > > char *line = l; > if (*line >= 'a' && *line <= 'z') { > // file name > while (*line && *line != ':' && *line != ' ' && *line != > '\t') > ++line; > if (!*line) > continue; > const char * const composeFileNameEnd = line; > *line = '\0'; > ++line; > > // locale name > while (*line && (*line == ' ' || *line == '\t')) > ++line; > const char * const lc = line; > while (*line && *line != ' ' && *line != '\t' && *line != > '\n') > ++line; > *line = '\0'; > > if (localeNameLength == (line - lc) && !strncasecmp(lc, > localeData, line - lc)) { > file = QString::fromUtf8(l, composeFileNameEnd - l); > break; > } > } > } > mappings.close(); > > > I wonder if we could test your optimizations soon? > Is there a list of other startup optimizations you're working on > so that we don't dilute the efforts by working on the same thing? > > > > > On Thu, Oct 31, 2013 at 5:22 PM, Thiago Macieira <thiago.macie...@intel.com> > wrote: >> >> On quinta-feira, 31 de outubro de 2013 07:38:00, Knoll Lars wrote: >> > Before going to a binary format, I’d first like to check whether we can >> > further speed up the parsing. I’ve done some work in that area in >> > spring, >> > but I know there was still quite some room to improve it. >> >> I'm also improving the fromUtf8 code. My current benchmarks are showing an >> improvement of 2x in the new plain code and 12x with SIMD improvements, >> for >> mostly ASCII input. >> >> One further step is to detect an UTF-8 locale and use our optimised code, >> instead of letting ICU do the encoding. >> -- >> Thiago Macieira - thiago.macieira (AT) intel.com >> Software Architect - Intel Open Source Technology Center >> >> _______________________________________________ >> Development mailing list >> Development@qt-project.org >> http://lists.qt-project.org/mailman/listinfo/development >> > > > _______________________________________________ > Development mailing list > Development@qt-project.org > http://lists.qt-project.org/mailman/listinfo/development > _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development