Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recognising SLs seems slow #242

Open
ssiccha opened this issue Mar 31, 2021 · 2 comments
Open

Recognising SLs seems slow #242

ssiccha opened this issue Mar 31, 2021 · 2 comments
Labels
groups: classical related to recognition of classical groups performance

Comments

@ssiccha
Copy link
Collaborator

ssiccha commented Mar 31, 2021

@fingolfin and @danielrademacher mentioned this during a jitsi call:
The call RecognizeGroup(SL(40,3)); takes pretty long. Once one knows the name of the group, doing the constructive recognition by RECOG.FindStdGens_SL(SL(40,3),GF(3)); is quick.

@ssiccha ssiccha added performance groups: classical related to recognition of classical groups labels Mar 31, 2021
@fingolfin
Copy link
Member

Even finding the name is reasonably fast. Next thing to test would be to see how slow/fast calling FindHomMethodsProjective.ClassicalNatural is (which calls RECOG.FindStdGens_SL among other things). And then of course one could run the profiler to see where else we spend/waste time.

@danielrademacher
Copy link
Collaborator

danielrademacher commented Apr 19, 2021

I have looked into this.

The function 'FindHomMethodsProjective.ClassicalNatural' was pretty fast. I summarise the lines which used a lot of time:
250ms:
rifac := RecogniseGeneric(
Group(List(GeneratorsOfGroup(H), x->ImageElm(Homom(ri),x))),
methodsforfactor(ri), depth, forfactor(ri) );

200ms:
Setpregensfac( ri, CalcNiceGens(rifac,ri!.gensHmem) );

1850ms:
succ := CallFuncList(methgensN.method,
Concatenation([ri],methgensN.args));

These three lines are basically the bottlenecks for the call 'RecognizeGroup(SL(40,3));'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
groups: classical related to recognition of classical groups performance
Projects
None yet
Development

No branches or pull requests

3 participants