7.0.41

Aus BC-Wiki
Zur Navigation springen Zur Suche springen

Zur Übersicht

  • Manager: compile fixes for OpenBSD. From RustyBSD.
  • client (unix): rename() doesn't work between filesystems. If the user has set things up so that slots/ is a symlink to a different filesystem, things won't work when the client moves output files from the slot to project dir. Solution: if rename() fails, try system("mv ...") since mv works across filesystems
  • Manager: Fix Mac bug introduced by recent OpenBSD compile fixes.
  • MGR: Minor fix to the OpenCL output for Intel GPUs.
  • client: Hook up the XML portion of the Intel GPU detection code so the server scheduler knows about it.
  • client: Print out the peak flops for the Intel GPU, the regular OpenCL descriptions do not show peak flops. NOTE: At this point we should be supporting Intel GPUs as far as detection and reporting its presence to the server goes. I don't know about scheduling though.
  • client/server: fix build breaks I introduced last night with a variable rename.
  • client/server: Make sure the GPU Type field is really classified as an Intel GPU.
  • client/manager: tweaks to Intel GPU code
  • client: win compile fix
  • client: add new file gpu_intel.cpp to Xcode project.
  • client: replace ignore_nvidia_dev etc. with an array. PRINCIPLE: AVOID PER-GPU-TYPE VARIABLES
    • get rid of alloca() stuff in gutil.cpp; almost certainly not needed
    • don't include malloc.h; it doesn't exist on BSD systems
  • minor code cleanup from RustyBSD
  • client: clean up redundant and confusing GPU descriptions. Problems: COPROC_NVIDIA::description() is really description of CUDA GPUs. COPROC_ATI::description() is really description of CAL GPUs. On Windows and Linux, AMD OpenCL and CAL always coexist,and NVIDIA OpenCL and CUDA always coexist. But on the Mac, AMD OpenCL always exists without CAL and NVIDIA OpenCL often exists without CUDA. Therefore, BOINC has never shown peak-flops on the Mac for AMD or for NVIDIA without CUDA because it does not display COPROC_ATI::description() and may not display COPROC_NVIDIA::description(). On all OS's, INTEL GPU OpenCL will always exist without any vendor-proprietary GPU computation framework, so COPROC_INTEL::description() would never show COPROC_USED. Solutions: [1] Instead of adding "(OpenCL only)" to these descriptions just to show peak-flops for these cases, show peak_flops in all OpenCL descriptions. [2] Preface COPROC_NVIDIA::description() with "CUDA: " and preface COPROC_ATI::description() with "CAL: " to match the "OpenCL: " preface in OPENCL_DEVICE_PROP::description(). [3] Eliminate useless COPROC_INTEL::description().
  • client: COPROC_NVIDIA, COPROC_ATI and COPROC_INTEL constructors must initialize the entire struct, not just the GPU type field.
  • client: re-apply app configuration after each scheduler RPC; otherwise the changes get overwritten
  • lib: the XML tag for the description of an Intel GPU is <coproc_intel_gpu>, not <intel_gpu>
  • lib: the XML type field for an Intel GPU is INTEL_GPU, not INTEL
  • client: fix a few variable naming issue that cropped up during the merge to the 7.0.x branch.