ਹਰ ਡਿਵੈਲਪਰ ਨੇ ਇਹ ਸੁਣਿਆ ਹੈ, ਆਮ ਤੌਰ 'ਤੇ ਰਾਤ ਦੇ ਦੋ ਵਜੇ ਦੰਦ ਚਬਾਉਂਦੇ ਹੋਏ ਬੁੜਬੁੜਾਉਂਦੇ ਹੋਏ: "ਇਹ ਮੇਰੀ ਮਸ਼ੀਨ 'ਤੇ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ।" ਜਦੋਂ ਕੋਈ ਬਿਲਡ ਲੋਕਲਲੀ ਪਾਸ ਹੋ ਜਾਂਦਾ ਹੈ ਪਰ ਸਟੇਜਿੰਗ (staging) ਵਿੱਚ ਫੇਲ ਹੋ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਅਸੀਂ instinctively ਫਰੇਮਵਰਕ ਵਰਜ਼ਨ, ਕਿਸੇ ਗੁੰਮ ਹੋਈ environment variable, ਜਾਂ ਖੁਦ Docker ਨੂੰ ਦੋਸ਼ੀ ਮੰਨ ਲੈਂਦੇ ਹਾਂ। ਜਿੰਨਾ ਅਸੀਂ ਮੰਨਣਾ ਚਾਹੁੰਦੇ ਹਾਂ, ਉਸ ਤੋਂ ਕਿਤੇ ਜ਼ਿਆਦਾ ਅਸਲ ਦੋਸ਼ੀ ਆਪਰੇਟਿੰਗ ਸਿਸਟਮ ਹੁੰਦਾ ਹੈ। ਫਾਈਲ ਪਾਥ, ਸਿਸਟਮ ਕਾਲਸ, ਪੈਕੇਜ ਮੈਨੇਜਰ, ਅਤੇ ਕਰਨਲ ਵਿਵਹਾਰ ਸਭ ਇਹ ਤੈਅ ਕਰਦੇ ਹਨ ਕਿ ਕੋਡ ਕਿਵੇਂ ਚੱਲਦਾ ਹੈ। ਸਹੀ OS ਚੁਣਨਾ ਕਿਸੇ ਕਬੀਲੇ ਵਿੱਚ ਸ਼ਾਮਲ ਹੋਣ ਬਾਰੇ ਨਹੀਂ ਹੈ। ਇਹ ਤੁਹਾਡੇ ਲੈਪਟਾਪ ਅਤੇ ਪ੍ਰੋਡਕਸ਼ਨ ਦੇ ਵਿਚਕਾਰਲੇ ਰੁਕਾਵਟਾਂ ਨੂੰ ਹਟਾਉਣ ਬਾਰੇ ਹੈ।

Windows: ਇੱਕ ਸਰਵ-ਵਿਆਪਕ

Windows ਇੱਕ ਸਧਾਰਨ ਕਾਰਨ ਕਰਕੇ ਡਿਫੌਲਟ ਬਣਿਆ ਹੋਇਆ ਹੈ: ਹਾਰਡਵੇਅਰ ਬਸ ਕੰਮ ਕਰਦਾ ਹੈ। ਕੋਈ ਪੈਰੀਫੇਰਲ (peripheral) ਲਗਾਓ, ਅਤੇ ਸ਼ਾਇਦ ਉਸਦਾ ਡਰਾਈਵਰ ਮੌਜੂਦ ਹੁੰਦਾ ਹੈ। .NET ecosystem ਵਿੱਚ ਕੰਮ ਕਰਨ ਵਾਲੇ ਡਿਵੈਲਪਰਾਂ ਲਈ, Visual Studio ਅਜੇ ਵੀ ਸੁਨਹਿਰੀ ਮਿਆਰ (gold standard) ਹੈ। IntelliSense, debugging tooling, ਅਤੇ project scaffolding ਕੁਦਰਤੀ ਮਹਿਸੂਸ ਹੁੰਦੇ ਹਨ ਕਿਉਂਕਿ ਉਹ ਇਸ ਪਲੇਟਫਾਰਮ ਲਈ ਬਣਾਏ ਗਏ ਸਨ।

Windows Subsystem for Linux 2 ਦੇ ਨਾਲ, Microsoft ਨੇ Windows ਅਤੇ Unix-ਅਧਾਰਤ ਵਰਕਫਲੋਜ਼ ਦੇ ਵਿਚਕਾਰਲੇ ਪਾੜੇ ਨੂੰ ਕਾਫ਼ੀ ਹੱਦ ਤੱਕ ਖਤਮ ਕਰ ਦਿੱਤਾ ਹੈ। WSL2 ਇੱਕ ਹਲਕੇ utility VM ਦੇ ਅੰਦਰ ਇੱਕ ਅਸਲੀ Linux kernel ਚਲਾਉਂਦਾ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਤੁਸੀਂ dual-boot ਕੀਤੇ ਬਿਨਾਂ bash ਨੂੰ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ, apt ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ, ਅਤੇ Ubuntu ਚਲਾ ਸਕਦੇ ਹੋ। ਇਹ ਇੰਨਾ ਸੁਚਾਰੂ ਹੈ ਕਿ ਕਈ ਡਿਵੈਲਪਰ ਭੁੱਲ ਜਾਂਦੇ ਹਨ ਕਿ ਉਹ ਨੈਟਿਵ Linux 'ਤੇ ਨਹੀਂ ਹਨ।

ਪਰ ਇਸਦੀਆਂ ਸੀਮਾਵਾਂ ਹਨ। Windows 'ਤੇ Docker Desktop ਆਪਣੇ ਇੰਜਣ ਲਈ Linux VM 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ, ਅਤੇ Windows NT kernel ਅਤੇ Linux container ਦੇ ਵਿਚਕਾਰ ਫਾਈਲ ਸਿਸਟਮ ਅਨੁਵਾਦ (translation) ਲੇਟੈਂਸੀ (latency) ਪੈਦਾ ਕਰਦਾ ਹੈ। I/O-ਭਾਰੀ ਕਾਰਜ, ਜਿਵੇਂ ਕਿ ਵੱਡੀਆਂ node_modules ਡਾਇਰੈਕਟਰੀਆਂ ਨੂੰ ਮਾਊਂਟ ਕਰਨਾ ਜਾਂ ਵੌਲਯੂਮ ਦੇ ਅੰਦਰ ਕੰਪਾਈਲ ਕਰਨਾ, ਬੇਅਰ-ਮੈਟਲ (bare-metal) Linux ਨਾਲੋਂ ਕਾਫ਼ੀ ਹੌਲੀ ਚੱਲਦੇ ਹਨ। Windows ਅੱਪਡੇਟਸ ਦੀ ਇਹ ਆਦਤ ਵੀ ਹੈ ਕਿ ਉਹ ਤੁਹਾਡੇ ਕੰਮ ਦੇ ਵਿਚਕਾਰ ਹੀ ਮਸ਼ੀਨ ਨੂੰ ਰੀਬੂਟ ਕਰ ਦਿੰਦੇ ਹਨ, ਜੋ ਕਿ ਡੀਬੱਗਿੰਗ ਸੈਸ਼ਨ ਦੇ ਦੌਰਾਨ ਆਦਰਸ਼ ਨਹੀਂ ਹੈ।

Windows ਵਿਦਿਆਰਥੀਆਂ, ਗੇਮਰਾਂ, ਅਤੇ .NET ਐਪਲੀਕੇਸ਼ਨਾਂ ਬਣਾਉਣ ਵਾਲੇ ਇੰਜੀਨੀਅਰਾਂ ਲਈ ਬਹੁਤ ਵਧੀਆ ਹੈ। ਜੇਕਰ ਤੁਹਾਨੂੰ ਇੱਕ ਅਜਿਹੀ ਮਸ਼ੀਨ ਦੀ ਲੋੜ ਹੈ ਜੋ ਕੰਮ ਤੋਂ ਬਾਅਦ Steam ਚਲਾ ਸਕੇ ਅਤੇ ਦਿਨ ਦੌਰਾਨ Visual Studio, ਤਾਂ ਇਹ ਇੱਕ ਵਿਹਾਰਕ ਚੋਣ ਹੈ।

Linux: ਸਰਵਰ ਦਾ ਮਿਆਰ

ਜੇਕਰ ਪ੍ਰੋਡਕਸ਼ਨ Linux 'ਤੇ ਚੱਲਦੀ ਹੈ, ਤਾਂ Linux 'ਤੇ ਡਿਵੈਲਪ ਕਰਨਾ ਹੈਰਾਨੀ ਨੂੰ ਖਤਮ ਕਰ ਦਿੰਦਾ ਹੈ। ਆਪਰੇਟਿੰਗ ਸਿਸਟਮ ਸਰਵਰਾਂ ਲਈ ਬਣਾਇਆ ਗਿਆ ਸੀ, ਅਤੇ ਇਸਦਾ ਡਿਜ਼ਾਈਨ ਅਸੰਗਤਤਾਵਾਂ (assumptions) ਉਹੀ ਹਨ ਜੋ ਕਲਾਉਡ ਵਾਤਾਵਰਣ ਤੋਂ ਉਮੀਦ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। Unix ਦਾ ਫਲਸਫਾ ਕਿ ਹਰ ਚੀਜ਼ ਨੂੰ ਇੱਕ ਫਾਈਲ ਵਜੋਂ ਮੰਨਿਆ ਜਾਵੇ, ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਕੌਂਫਿਗਰੇਸ਼ਨ, ਹਾਰਡਵੇਅਰ ਡਿਵਾਈਸਾਂ, ਅਤੇ ਚੱਲ ਰਹੀਆਂ ਪ੍ਰਕਿਰਿਆਵਾਂ ਸਭ ਫਾਈਲਸਿਸਟਮ ਟ੍ਰੀ ਵਿੱਚ ਕਿਤੇ ਨਾ ਕਿਤੇ ਮੌਜੂਦ ਹੁੰਦੀਆਂ ਹਨ। ਉਹ ਇਕਸਾਰਤਾ ਆਟੋਮੇਸ਼ਨ ਨੂੰ ਸੌਖਾ ਬਣਾਉਂਦੀ ਹੈ। ਤੁਸੀਂ bash ਨਾਲ ਡਿਪਲਾਈਮੈਂਟ ਨੂੰ ਸਕ੍ਰਿਪਟ ਕਰ ਸਕਦੇ ਹੋ, systemd ਨਾਲ ਸੇਵਾਵਾਂ (services) ਦਾ ਪ੍ਰਬੰਧਨ ਕਰ ਸਕਦੇ ਹੋ, ਅਤੇ ਦੋ ਵੱਖ-ਵੱਖ ਕਰਨਲ ਆਰਕੀਟੈਕਚਰਾਂ ਵਿਚਕਾਰ ਅਨੁਵਾਦ ਕੀਤੇ ਬਿਨਾਂ ਕੰਟੇਨਰਾਂ ਨੂੰ ਸੰਚਾਲਿਤ ਕਰ ਸਕਦੇ ਹੋ।

Docker ਨੂੰ Linux primitives 'ਤੇ ਬਣਾਇਆ ਗਿਆ ਸੀ। Namespaces ਅਤੇ cgroups ਇੱਥੇ ਨੈਟਿਵ ਹਨ, ਇਸ ਲਈ ਕੰਟੇਨਰ ਦੂਜੇ ਪਲੇਟਫਾਰਮਾਂ ਦੇ ਮੁਕਾਬਲੇ ਤੇਜ਼ੀ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦੇ ਹਨ ਅਤੇ ਬੇਅਰ-ਮੈਟਲ ਸਪੀਡ ਦੇ ਨੇੜੇ ਚੱਲਦੇ ਹਨ। ਇਸਦਾ ਵਾਧੂ ਬੋਝ (overhead) ਨ minimal ਹੈ, ਪੈਕੇਜ ਮੈਨੇਜਰ ਪਰਿਪੱਕ ਹਨ, ਅਤੇ ਤੁਸੀਂ ਸਿਸਟਮ ਨੂੰ ਸਿਰਫ਼ ਉਹੀ ਰੱਖ ਸਕਦੇ ਹੋ ਜਿਸਦੀ ਤੁਹਾਨੂੰ ਲੋੜ ਹੈ। ਇੱਕ ਹੈੱਡਲੈੱਸ (headless) Linux ਸਰਵਰ ਰੀਬੂਟ ਤੋਂ ਬਿਨਾਂ ਸਾਲਾਂ ਤੱਕ ਚੱਲ ਸਕਦਾ ਹੈ।

ਇਸਦਾ ਨੁਕਸਾਨ ਡੈਸਕਟਾਪ ਦੀ ਪਾਲਿਸ਼ (polish) ਹੈ। ਵਪਾਰਕ ਸਾਫਟਵੇਅਰ ਸਪੋਰਟ ਪਛੜ ਜਾਂਦੀ ਹੈ। ਤੁਹਾਨੂੰ ਨੈਟਿਵ Adobe Creative Cloud ਐਪਸ ਨਹੀਂ ਮਿਲਣਗੇ, ਅਤੇ ਕੁਝ ਪ੍ਰੋਪਰਾਈਟਰੀ IDEs ਜਾਂ ਸਹਿਯੋਗ ਸਾਧਨਾਂ (collaboration tools) ਲਈ ਜੁਗਾੜ (workarounds) ਦੀ ਲੋੜ ਪੈ ਸਕਦੀ ਹੈ। ਹਾਰਡਵੇਅਰ ਸੈੱਟਅੱਪ ਲਈ ਸਬਰ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ। Wi-Fi ਕਾਰਡ, Bluetooth ਅਡਾਪਟਰ, ਅਤੇ ਹਾਈਬ੍ਰਿਡ ਗ੍ਰਾਫਿਕਸ ਨੂੰ ਕਦੇ-ਕਦੇ ਮੈਨੂਅਲ ਡਰਾਈਵਰ ਇੰਸਟਾਲੇਸ਼ਨ ਜਾਂ ਕਰਨਲ ਮੋਡੀਊਲ ਟਵੀਕਸ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। NVIDIA ਡਰਾਈਵਰਾਂ ਵਿੱਚ ਕਾਫ਼ੀ ਸੁਧਾਰ ਹੋਇਆ ਹੈ, ਪਰ CUDA ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਕੌਂਫਿਗਰ ਕਰਨ ਲਈ ਅਜੇ ਵੀ ਅਜਿਹੀ ਡਾਕੂਮੈਂਟੇਸ਼ਨ ਪੜ੍ਹਨੀ ਪੈਂਦੀ ਹੈ ਜੋ ਇਹ ਮੰਨ ਕੇ ਚਲਦੀ ਹੈ ਕਿ ਤੁਹਾਨੂੰ ਟਰਮੀਨਲ ਦੀ ਚੰਗੀ ਜਾਣਕਾਰੀ ਹੈ।

ਬੈਕਐਂਡ ਇੰਜੀਨੀਅਰਾਂ, DevOps ਮਾਹਰਾਂ, ਅਤੇ AI ਇਨਫਰਾਸਟ੍ਰਕਚਰ ਬਣਾਉਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਵਿਅਕਤੀ ਨੂੰ Linux ਨੂੰ ਡਿਫੌਲਟ ਵਜੋਂ ਲੈਣਾ ਚਾਹੀਦਾ ਹੈ। ਜਦੋਂ ਤੁਹਾਡਾ ਪ੍ਰੋਡਕਸ਼ਨ ਵਾਤਾਵਰਣ Ubuntu ਜਾਂ RHEL ਚਲਾਉਂਦਾ ਹੈ, ਤਾਂ ਉਸੇ ਨੂੰ ਲੋਕਲਲੀ ਮਿਰਰ ਕਰਨਾ ਡਿਪਲਾਈਮੈਂਟ ਡੀਬੱਗਿੰਗ ਦੇ ਕਈ ਘੰਟੇ ਬਚਾਉਂਦਾ ਹੈ।

macOS: ਸੁਧਾਰਿਆ ਹੋਇਆ Unix

macOS ਇੱਕ ਅਜਿਹੇ ਵਿਚਕਾਰਲੇ ਰਾਹ 'ਤੇ ਹੈ ਜੋ ਉਹਨਾਂ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਪਸੰਦ ਆਉਂਦਾ ਹੈ ਜੋ ਅਜਿਹਾ ਟਰਮੀਨਲ ਚਾਹੁੰਦੇ ਹਨ ਜੋ Linux ਵਾਂਗ ਕੰਮ ਕਰੇ ਅਤੇ ਅਜਿਹਾ GUI ਜੋ ਇੱਕ ਕੰਜ਼ਿਊਮਰ ਪ੍ਰੋਡਕਟ ਵਾਂਗ ਲੱਗੇ। ਅੰਦਰੂਨੀ ਤੌਰ 'ਤੇ ਇਹ ਇੱਕ ਸਰਟੀਫਾਈਡ Unix ਆਪਰੇਟਿੰਗ ਸਿਸਟਮ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ bash, zsh, make, ssh, ਅਤੇ git ਸਭ ਉਹੀ ਕੰਮ ਕਰਦੇ ਹਨ ਜਿਵੇਂ ਤੁਸੀਂ ਇੱਕ ਸਰਵਰ 'ਤੇ ਉਮੀਦ ਕਰਦੇ ਹੋ। Apple Silicon ਨੇ ਪੂਰੀ ਗਣਨਾ ਹੀ ਬਦਲ ਦਿੱਤੀ ਹੈ। M-ਸੀਰੀਜ਼ ਚਿੱਪਸ ਡੈਸਕਟਾਪ-ਕਲਾਸ ਪ੍ਰਦਰਸ਼ਨ ਦਿੰਦੀਆਂ ਹਨ ਅਤੇ ਨਾਲ ਹੀ ਲੈਪਟਾਪ ਦੀ ਬੈਟਰੀ ਲਾਈਫ ਨੂੰ 10 ਤੋਂ 20 ਘੰਟੇ ਦੀ ਰੇਂਜ ਵਿੱਚ ਰੱਖਦੀਆਂ ਹਨ। ਤੁਸੀਂ ਪੱਖੇ (fans) ਚਲਾਏ ਬਿਨਾਂ ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਕੰਪਾਈਲ ਕਰ ਸਕਦੇ ਹੋ, ਇੱਕ ਲੋਕਲ ਸਟੈਕ ਚਲਾ ਸਕਦੇ ਹੋ, ਅਤੇ ਵੀਡੀਓ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।

ਮੋਬਾਈਲ ਡਿਵੈਲਪਰਾਂ ਲਈ, macOS ਇੱਕ ਲਾਜ਼ਮੀ ਚੀਜ਼ ਹੈ। Xcode ਅਤੇ iOS simulator ਸਿਰਫ਼ Apple ਹਾਰਡਵੇਅਰ 'ਤੇ ਹੀ ਚੱਲਦੇ ਹਨ। ਇਹ ਈਕੋਸਿਸਟਮ ਰਚਨਾਤਮਕ (creative) ਅਤੇ ਫੁੱਲ-ਸਟੈਕ ਵਰਕਫਲੋਜ਼ ਵੱਲ ਵੀ ਝੁਕਿਆ ਹੋਇਆ ਹੈ। ਟ੍ਰੈਕਪੈਡ ਅਤੇ ਡਿਸਪਲੇਅ ਬਹੁਤ ਵਧੀਆ ਹਨ, ਅਤੇ ਸਲੀਪ/ਵੇਕ (sleep/wake) ਦੀ ਭਰੋਸੇਯੋਗਤਾ ਦਾ ਮਤਲਬ ਹੈ ਕਿ ਤੁਸੀਂ ਢੱਕਣ ਖੋਲ੍ਹਦੇ ਹੋ ਅਤੇ ਤੁਰੰਤ ਕੰਮ ਸ਼ੁਰੂ ਕਰ ਦਿੰਦੇ ਹੋ।

ਇਸਦੇ ਨੁਕਸਾਨ ਲਾਗਤ ਅਤੇ ਲਚਕਤਾ ਹਨ। ਤੁਸੀਂ ਮੈਮੋਰੀ ਅਤੇ ਸਟੋਰੇਜ ਅੱਪਗ੍ਰੇਡ ਲਈ ਵਾਧੂ ਕੀਮਤ ਅਦਾ ਕਰਦੇ ਹੋ, ਜੋ ਕਿ ਇੱਕ ਕਸਟਮ PC ਜਾਂ ThinkPad 'ਤੇ ਬਹੁਤ ਸੌਖਾ ਹੁੰਦਾ। ਹਾਰਡਵੇਅਰ ਦੀ ਰੇਂਜ ਸੀਮਤ ਹੈ। ਜੇਕਰ ਤੁਹਾਨੂੰ ਲੋਕਲ ਮਾਡਲ ਟ੍ਰੇਨਿੰਗ ਲਈ ਕਿਸੇ ਖਾਸ GPU ਜਾਂ ਲੈਬ ਉਪਕਰਣਾਂ ਲਈ ਅਸਾਧਾਰਨ ਪੋਰਟਾਂ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਬਾਹਰੀ enclosures ਅਤੇ dongles ਤੋਂ ਬਿਨਾਂ Mac ਤੁਹਾਡੀ ਲੋੜਾਂ ਪੂਰੀਆਂ ਨਹੀਂ ਕਰ ਸਕਦਾ।

ਫੁੱਲ-ਸਟੈਕ ਡਿਵੈਲਪਰ, iOS ਇੰਜੀਨੀਅਰ, ਅਤੇ ਸਟਾਰਟਅੱਪ ਫਾਊਂਡਰ ਜੋ ਪੋਰਟੇਬਿਲਟੀ ਨੂੰ ਮਹੱਤਵ ਦਿੰਦੇ ਹਨ, ਅਕਸਰ ਇਸ ਵੱਲ ਖਿੱਚੇ ਜਾਂਦੇ ਹਨ। ਇਹ ਇੱਕ ਮਹਿੰਗਾ ਵਿਕਲਪ ਹੈ, ਪਰ ਇਹ ਰੋਜ਼ਾਨਾ ਦੀਆਂ ਰੁਕਾਵਟਾਂ ਨੂੰ ਘੱਟ ਕਰਦਾ ਹੈ।

ਕੀ AI ਲਈ OS ਮਹੱਤਵਪੂਰਨ ਹੈ?

ਮਾਡਲ ਖੁਦ ਇਸ ਬਾਰੇ ਕੋਈ ਫਰਕ ਨਹੀਂ ਪਾਉਂਦਾ। Ollama, LM Studio, ਜਾਂ vLLM ਰਾਹੀਂ ਚੱਲ ਰਿਹਾ ਇੱਕ ਲਾਰਜ ਲੈਂਗੂਏਜ ਮਾਡਲ ਉਹੀ tokens ਪੈਦਾ ਕਰਦਾ ਹੈ, ਚਾਹੇ ਤੁਹਾਡਾ kernel Microsoft, Linus Torvalds, ਜਾਂ Apple ਦੁਆਰਾ ਕੰਪਾਈਲ ਕੀਤਾ ਗਿਆ ਹੋਵੇ। ਤੁਹਾਡੇ ਟੂਲ ਤੁਹਾਡੇ ਆਪਰੇਟਿੰਗ ਸਿਸਟਮ ਨਾਲੋਂ ਕਿਤੇ ਜ਼ਿਆਦਾ ਮਹੱਤਵਪੂਰਨ ਹਨ। ਜਦੋਂ ਤੁਸੀਂ AI agents ਬਣਾ ਰਹੇ ਹੁੰਦੇ ਹੋ, ਤਾਂ Python dependency management, Node.js runtimes, reproducible environments ਲਈ Docker, API integrations, ਅਤੇ context windows ਲਈ memory management ਵਿੱਚ ਮਾਹਰ ਹੋਣ 'ਤੇ ਧਿਆਨ ਦਿਓ।

ਫਿਰ ਵੀ, production AI ਸਿਸਟਮ ਜ਼ਿਆਦਾਤਰ Linux 'ਤੇ ਚੱਲਦੇ ਹਨ। NVIDIA ਦੇ datacenter GPU drivers ਅਤੇ CUDA toolkit ਪਹਿਲਾਂ Linux ਲਈ ਵਿਕਸਤ ਅਤੇ ਆਪਟੀਮਾਈਜ਼ ਕੀਤੇ ਗਏ ਹਨ। ਇੱਕ ਗ੍ਰਾਫਿਕਲ ਡੈਸਕਟਾਪ ਦਾ ਵਾਧੂ ਬੋਝ ਹਟਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਨਾਲ training ਅਤੇ inference ਲਈ ਵਧੇਰੇ VRAM ਅਤੇ CPU cycles ਮਿਲਦੇ ਹਨ। ਜੇਕਰ ਤੁਸੀਂ cloud compute ਕਿਰਾਏ 'ਤੇ ਲੈ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਲਗਭਗ ਯਕੀਨੀ ਤੌਰ 'ਤੇ ਇੱਕ Linux instance ਵਿੱਚ SSH ਕਰ ਰਹੇ ਹੋਵੋਗੇ। ਲੋਕਲ ਪ੍ਰਯੋਗਾਂ ਲਈ, Apple Silicon ਵਾਲਾ MacBook ਸ਼ਾਂਤ ਅਤੇ ਪਾਵਰ-ਐਫੀਸ਼ੀਐਂਟ ਹੈ, ਪਰ ਜਦੋਂ ਟ੍ਰੇਨ ਕਰਨ ਦਾ ਸਮਾਂ ਆਉਂਦਾ ਹੈ...