llm.c icon indicating copy to clipboard operation
llm.c copied to clipboard

CI Windows changes

Open rosslwheeler opened this issue 1 year ago • 11 comments

@Ricardicus This is the first phase - just want to check on the structure. I'll put some more comments over here https://github.com/karpathy/llm.c/issues/229.

rosslwheeler avatar May 01 '24 07:05 rosslwheeler

Nice! I was wondering when this would come since you added Windows support 😊 I have been using nmake from VS on windows. Nice to see there is another way. Is it possible to build the cuda also? Maybe it takes too long to install for the CI?

Ricardicus avatar May 01 '24 07:05 Ricardicus

Yes, the CI is taking too long when I install Cuda for WIndows dynamically but am trimming down the packages installed to see if I can get the time down.

rosslwheeler avatar May 01 '24 07:05 rosslwheeler

The time it took is 5m 26s and Ubuntu variant is slower at 5m 33s. They run in parallel so this does not add more time to the CI I think. I think this looks solid!

Ricardicus avatar May 01 '24 07:05 Ricardicus

Since the cuda build requires installing cuda which takes a lot of time, I think this is a good start. I can imagine that one could have a different trigger for that workflow action like periodically. I don't know if one can do it periodically here, haven't tested that. Would be neat. Perhaps just start here in this PR and add cuda windows build in another pr.

Ricardicus avatar May 01 '24 07:05 Ricardicus

Sound good! Makes sense to me. I'll do the follow-on PR once we get the Cuda timings down and/or have a solution periodically that seems reasonable.

rosslwheeler avatar May 01 '24 07:05 rosslwheeler

Does it build with open MP support here in the windows CI?

Ricardicus avatar May 01 '24 07:05 Ricardicus

Yes, it's defaulting to OpenMP on. I didn't split out all the different versions (e.g. OpenMP off etc.) but can if we want to.

rosslwheeler avatar May 01 '24 07:05 rosslwheeler

Ok! No I don't think it is needed. Just wondering. LGTM 👍

Ricardicus avatar May 01 '24 08:05 Ricardicus

Okay, this is ready to go. Reduced the Windows Cuda builds (Cuda installation mainly) time from 20+ minutes to 2 minutes.

image

rosslwheeler avatar May 10 '24 06:05 rosslwheeler

Very cool! Great work. I see that you download and install the cuda dependencies directly. I wonder why the official installation is so much slower.

Ricardicus avatar May 10 '24 08:05 Ricardicus

Yes, not sure why the executable installer is so much slower.

Still looking into getting us some Cuda github runners too. Looks like we might need a team/enterprise GitHub account to get one (and that's not a guarantee either).

rosslwheeler avatar May 10 '24 08:05 rosslwheeler

Updated with this one https://github.com/karpathy/llm.c/pull/401 - it's ready to go.

rosslwheeler avatar May 12 '24 01:05 rosslwheeler