Skip to content

Commit

Permalink
Make msvc compile by adding the ifdefs back in gelu_backward, fixes k…
Browse files Browse the repository at this point in the history
  • Loading branch information
dagelf committed Apr 22, 2024
1 parent 451c1a4 commit 4056446
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion train_gpt2.c
Original file line number Diff line number Diff line change
Expand Up @@ -364,8 +364,10 @@ void gelu_forward(float* out, float* inp, int N) {
}

// we want to use -Ofast optimization, but sadly GeLU breaks, so disable this flag just for it (#168)
#pragma float_control(precise, on, push) // On msvc /fp:fast is a lot faster, but the expf inside coshf breaks the model
#pragma float_control(precise, on, push)
#if defined(__GNUC__) && !defined(__clang__)
__attribute__((optimize("no-finite-math-only"))) // same for gcc -Ofast
#endif
void gelu_backward(float* dinp, float* inp, float* dout, int N) {
for (int i = 0; i < N; i++) {
float x = inp[i];
Expand Down

0 comments on commit 4056446

Please sign in to comment.