jan icon indicating copy to clipboard operation
jan copied to clipboard

epic: Jan supports multiple CPU/GPU Hardware optimizations

Open tikikun opened this issue 1 year ago • 7 comments

Problem

Windows users encounter elevated CPU usage (ex: #887), prompting the need for hardware optimizations in Nitro/Jan across various Windows architectures (CPU, GPU).

Success Criteria

  • Achieve compatibility for Jan on Windows with 16GB of RAM, accommodating systems lacking a GPU.
  • Enable Jan to operate seamlessly on Windows systems featuring Nvidia GPUs.

Out-of-scope

Not support Intel, AMD GPU for now, although we still detect these device.

Tasklist

Design & FE

  • [x] #1646

Implementation

  • [x] #286
  • [x] #912
  • [x] #913
  • [ ] #915
  • [x] #911
  • [x] #914
  • [x] #1730

Additional context

  • Edge inferencing on windows is very important, Intel and Nvidia hardware having multiple optimizations that can be tuned to make LLM inference possible on windows.
  • https://www.intel.com/content/www/us/en/developer/tools/oneapi/overview.html

tikikun avatar Dec 07 '23 09:12 tikikun

https://www.npmjs.com/package/systeminformation

tikikun avatar Dec 07 '23 15:12 tikikun

Intel optimization: Instructions set: AVX2 - Consumer grade AVX512 - Before gen 12 or Consumer grade AVX_VNNI - Consumer grade with OneAPI AVX512_VNNI - Server grade

tikikun avatar Dec 08 '23 05:12 tikikun

Windows WSL https://github.com/janhq/jan/issues/912

oneAPI for Windows https://github.com/janhq/jan/issues/911

AMD GPU for Windows https://github.com/janhq/jan/issues/913

AMD CPU for Windows https://github.com/janhq/jan/issues/914

Intel GPU (maybe crossing with oneAPI) https://github.com/janhq/jan/issues/915

tikikun avatar Dec 08 '23 08:12 tikikun

@tikikun I've renamed this Epic and added more detail to the "Top" post, please take a look.

I will be creating a separate "Jan should work on Windows" epic, that will be more Product-focused (there will be some overlap)

dan-menlo avatar Dec 09 '23 12:12 dan-menlo

Archive the original comment of Alan:


Problem

  • Windows users experience 100% CPU usage (#887)
  • Nitro/Jan needs to support hardware optimizations for different Windows architectures (CPU, GPU)

Success Criteria

  • Jan can run on Windows with 16gb of RAM, no GPU (both Intel and AMD processors)
  • Jan can run on Windows with Intel, AMD, Nvidia GPUs

Tasks

  • [x] #912
  • [x] #911
  • [x] #913
  • [x] #914
  • [x] #915

Additional context

  • Edge inferencing on windows is very important, Intel and Nvidia hardware having multiple optimizations that can be tuned to make LLM inference possible on windows.
  • https://www.intel.com/content/www/us/en/developer/tools/oneapi/overview.html

hantran-co avatar Jan 17 '24 07:01 hantran-co

@Van-QA to decompose this into the engineering: Jan Inference Layer roadmap

dan-menlo avatar Feb 16 '24 08:02 dan-menlo

Only 1 feat and 1 epic left, I will close this epic once the remaining ticket #915 completed. On the other hand, I will follow up with the epic #913 in the engineering: Jan Inference Layer roadmap image

Van-QA avatar Feb 16 '24 10:02 Van-QA

as discussed with @hiro-v, the remaining feat #915 is nice to have, and will handled in the follow up epic #2092

Van-QA avatar Feb 19 '24 10:02 Van-QA