Recent submissions

Comment · 8 years ago
The ability just to swap in the cuFFTW header for FFTW3's making calls execute on GPU (even though it doesn't give the best performance) is also nice for beginners.
Comment · 8 years ago
Comment · 9 years ago
> The last point is especially important if your host operating system is macOS, on which it is a really bad idea to directly install a binary Clang other than the one that comes with Xcode.

Why is this? I mean, I understand why you don't want to install over the system compiler, but having another version of Clang installed side by side shouldn't be an issue, should it?

Comment · 9 years ago
I think it's really sad that I often see people on public transport in the UK just offload a device onto their children to placate them when they're bored.
Comment · 9 years ago
When I was taught C++ at University, we were just told to download Quincy which bundles a (pretty old) version of GCC with a text editor on Windows.

Once we had the basics down they introduced Linux, the command line interface to GCC, etc.

Comment · 9 years ago
I've found generally it's fine for most things but issues come from when the scientific libraries are built with/without certain options. The lack of OpenMP for FFTW is annoying, for example.
Comment · 9 years ago
Comment · 9 years ago
Unity is getting ditched in favour of GNOME3 as of 18.04, which probably means it's going to die...
Comment · 9 years ago
Comment · 9 years ago
Does Go have templating?
Comment · 9 years ago
I was taught to do it like this in C:

  double *a = malloc(sizeof(double)*nx*ny*nz);
  int id;
  for(int k = 0; k < nz; k++) {
      for(int j = 0; j < ny; j++) {
          for(int i = 0; < i < nx; i++) {
              id = k*nx*ny + j*nx + i;
              a[id] = /* some mathematical operation */
          }
      }
  }
You can do it in other ways (arrays of pointes, etc), but I think this is probably the simplest conceptually, and the memory is contiguous.
Comment · 9 years ago
I use Python for most things and write C extensions which can use OpenMP or CUDA and which are hooked in via Cython for the slow parts. Find this works well, although it can lead to you duplicating things unnecessarily sometimes (needing a C function to be callable by Python requires you to write a wrapper for it).
Comment · 9 years ago
In academia it's also because NVidia does a lot of stuff to make your life easy.

For example, NVidia came to our University in the UK and provided training for £20 an academic/PhD student for a 2 day course on how to use CUDA and with performance tips, hands on porting of code, etc. They also give away CUDA cards to academics under a hardware grant scheme, so it's possible to get a free Titan Xp this year for a research group.

There's not really an equivalent for AMD or Intel; a Xeon Phi Knights Landing chip is significantly more expensive than a consumer level GPU, and the same cost as a workstation GPU, and it's a lot harder to get good performance from it. It also doesn't seem like AMD are targeting this market, at least not currently.

Comment · 9 years ago
I think it's likely that it's because organisations can manage users by their domain name - it's possible to have a blanket rule that allows users to create an account for a team if they have an e-mail address from that organisation.

That said, I'm surprised they've not let users associate all of your Slack team accounts with a single account.

Comment · 9 years ago
Ah right, I wasn't aware of that.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton