Understanding Performance Differences of FPGAs and GPUs