[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#750785: Slowness with context and xetex



This looks fine.  Try passing NULL for shaperList and see if that changes anything.

If it doesn't, then something in our shape_plan_cache isn't working.  I have a hard time imagining what though.


On Mon, Aug 11, 2014 at 1:55 AM, Norbert Preining <preining@logic.at> wrote:
Hi Behdad,

I have now done the following changes in XeTeXLayoutInterface.cpp
(somewhere aboce the surrounding function, declar curtime and nxttime)

static time_t curtime;
static time_t nxttime;

int
layoutChars(XeTeXLayoutEngine engine, uint16_t chars[], int32_t offset, int32_t count, int32_t max,
                        bool rightToLeft)
{
...

curtime = time(NULL);
fprintf(stderr, "DEBUG [%d] hbFace=%d, segment_props.script=%d, segment_props.direction=%d, segment-props.language=%d, engine->nFeatures=%d, shaperList=%s\n",
                       curtime, hbFace, segment_props.script, segment_props.direction, segment_props.language, engine->nFeatures, engine->ShaperList);
    shape_plan = hb_shape_plan_create_cached(hbFace, &segment_props, engine->features, engine->nFeatures, engine->ShaperList);
nxttime = time(NULL);
fprintf(stderr, "DEBUG [%d] <%d> return from hb_shape_plan_create_cached\n", nxttime, nxttime-curtime);
....


I don't know if this is enough, but I got loads of lines of course,
and about 300 or more where there is
        <1>
so a second of working time in hb_shape_plan_create_cached.

Concerning the other values:

hbFace: in total 5 different values, 4 at the beginning and then the same
segment_props.script switches between 0 and 1281455214, but most of the time
        it is 128...
segment_props.direction is always 4
segment-props.language=44576992
engine->nFeatures=0
shaperList=<A8>1N               (printed as %s)

I have uploaded the full output and the test file:
http://www.preining.info/xelatexslow-debug-output.log (21M)
http://www.preining.info/xelatexslow-debug-output.log.gz (98k)
http://www.preining.info/xelatexslow.tex (174k)

Hope that gives you any hint. Let me know if I can provide any
further data.

Thanks a lot

Norbert

------------------------------------------------------------------------
PREINING, Norbert                               http://www.preining.info
JAIST, Japan                                 TeX Live & Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0  ACF0 6CAC A448 860C DC13
------------------------------------------------------------------------



--
behdad
http://behdad.org/

Reply to: