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

Support of more than 64 cores #124

Open
mikerabat opened this issue Sep 27, 2023 · 3 comments
Open

Support of more than 64 cores #124

mikerabat opened this issue Sep 27, 2023 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@mikerabat
Copy link

We tried to create an Azure cloud virtual machine with 120 cores. The library supports only 64 since this is the max reported by
the system calls.

To get around that (in Windows):
-> one would need to count the number of cores differently
-> there is the concept of processor groups in windows -> assign the threads to groups.

I took the liberty to implement such a thing in:
https://github.com/mikerabat/neural-api
a fork of this project that includes some bugfixes/enhancements (Delphi AVX dot product, some tests to avoid problems in
different environments, GELu activiation function and others)

In case that it is interesting please merge the code. I'm to dumb to do that and have quite some problem with the git philosophy....

@joaopauloschuler
Copy link
Owner

@mikerabat , thank you for sharing it! I'm certain that there are other users that will benefit from your branch. I'll eventually look at it with care.

One thing I'm certain: you are not dumb!

@joaopauloschuler joaopauloschuler self-assigned this Oct 31, 2023
@joaopauloschuler joaopauloschuler added the enhancement New feature or request label Oct 31, 2023
@joaopauloschuler
Copy link
Owner

@mikerabat , this is just to say that I haven't forgotten your branch. I'll eventually look at it commit per commit.

@mikerabat
Copy link
Author

I'm glad to help - there were also a few minor things regarding console output and other things that my branch includes. In addition I wanted to check if I could add AVX512 support... the code wouldn't be that hard to implement but I lack of such a cpu :/
Also (at least for my problems) I only implemented a AVX dot product and AVX Mul Add function - these were the two functions that are predominantly called in my nets...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants