ਜਾਣੋ ਕਿ Marvell ਦਾ ਡਾਟਾ ਇਨਫਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ ਕਿਵੇਂ ਕਲਾਉਡ ਨੈਟਵਰਕਿੰਗ, ਸਟੋਰੇਜ ਅਤੇ ਕਸਟਮ ਐਕਸਲੇਰੇਸ਼ਨ ਨੂੰ ਸਮਰਥਨ ਦੇ ਕੇ ਦੇਖਣ ਤੋਂ ਬਿਨਾਂ ਤੇਜ਼, ਜ਼ਿਆਦਾ ਕਾਰਗਰ ਡੇਟਾ ਸੈਂਟਰ ਚਲਾਉਂਦਾ ਹੈ।

ਜ਼ਿਆਦਾਤਰ ਲੋਕ ਸੋਚਦੇ ਹਨ ਕਿ “ਕਲਾਉਡ” ਸਿਰਫ ਸਰਵਰ ਹਨ। ਹਕੀਕਤ ਵਿੱਚ, ਇੱਕ ਕਲਾਉਡ ਡੇਟਾ ਸੈਂਟਰ ਡੇਟਾ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਹਿਲਾਉਣ, ਸੰਭਾਲਣ ਅਤੇ ਸੁਰੱਖਿਅਤ ਰੱਖਣ ਲਈ ਇੱਕ ਵੱਡਾ ਸਿਸਟਮ ਹੁੰਦਾ ਹੈ। ਡਾਟਾ ਇਨਫਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ ਉਹ ਵਿਸ਼ੇਸ਼ ਚਿਪ ਹਨ ਜੋ ਇਹ ਭਾਰੀ-ਡੇਟਾ ਦੇ ਕੰਮ ਸੰਭਾਲਦੇ ਹਨ ਤਾਂ ਜੋ ਮੁੱਖ CPU ਨੂੰ ਇਹ ਨਹੀਂ ਕਰਨਾ ਪਏ।
Marvell ਇਸ “ਦਰਮਿਆਨੀ” স্তਰ 'ਤੇ ਧਿਆਨ ਦਿੰਦਾ ਹੈ: ਉਹ ਚਿਪ ਜੋ ਕੰਪਿਊਟ ਨੂੰ ਨੈਟਵਰਕ ਅਤੇ ਸਟੋਰੇਜ ਨਾਲ ਜੋੜਦੇ ਹਨ, ਆਮ ਡੇਟਾ-ਸੈਂਟਰ ਟਾਸਕਾਂ ਨੂੰ ਤੇਜ਼ ਕਰਦੇ ਹਨ, ਅਤੇ ਲੋਡ ਦੇ ਦੌਰਾਨ ਸਭ ਕੁਝ ਸੀਧਾ ਅਤੇ ਭਰੋਸੇਯੋਗ ਰੱਖਦੇ ਹਨ।
ਜੇ ਤੁਸੀਂ ਇੱਕ ਕਲਾਉਡ ਰੈਕ ਨੂੰ ਟੌਪ ਤੋਂ ਬੋਟਮ ਤੱਕ ਸੋਚੋ, ਤਾਂ Marvell ਡਿਵਾਈਸ ਆਕਸਰ ਇੱਥੇ ਬੈਠਦੇ ਹਨ:
ਇਹ “ਐਪ” ਨਹੀਂ ਹਨ ਤੇ ਨਾ ਹੀ ਪਰੰਪਰਾਗਤ ਤੌਰ 'ਤੇ “ਸਰਵਰ”—ਇਹ ਉਹ ਹਾਰਡਵੇਅਰ ਇਮਾਰਤੀ ਇਟਾਂ ਹਨ ਜੋ ਹਜ਼ਾਰਾਂ ਸਰਵਰਾਂ ਨੂੰ ਇੱਕ ਇਕੱਠੇ ਸੇਵਾ ਵਾਂਗ ਵਰਤਣ ਯੋਗ ਬਣਾਉਂਦੇ ਹਨ।
ਜਦੋਂ ਇਨਫਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ ਆਪਣਾ ਕੰਮ ਕਰ ਰਿਹਾ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਇਸਨੂੰ ਮਹਿਸੂਸ ਨਹੀਂ ਕਰਦੇ। ਪੇਜ਼ ਤੇਜ਼ ਖੁਲਦੇ ਹਨ, ਵੀਡੀਓ ਘੱਟ ਬਫਰ ਹੁੰਦੀ ਹੈ, ਅਤੇ ਬੈਕਅਪ ਸਮੇਂ 'ਤੇ ਮੁਕੰਮਲ ਹੁੰਦੇ ਹਨ—ਪਰ ਉਪਭੋਗਤਾ ਨੂੰ ਨੈਟਵਰਕ ਓਫਲੋਡ ਇੰਜਨ, ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਜਾਂ ਸਵਿੱਚਿੰਗ ਫੈਬਰਿਕ ਦੇ ਹੋਣ ਦਾ ਪਤਾ ਨਹੀਂ ਲੱਗਦਾ। ਇਹ ਚਿਪ ਸਾਫ-ਸੁਥਰੇ ਢੰਗ ਨਾਲ ਲੇਟੈਂਸੀ ਘਟਾਉਂਦੇ ਹਨ, CPU ਸਾਈਕਲ ਛੱਡਦੇ ਹਨ, ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਜ਼ਿਆਦਾ ਇੱਕਸਾਰ ਬਣਾਉਂਦੇ ਹਨ।
Marvell ਦੀ ਭੂਮਿਕਾ ਆਸਾਨੀ ਨਾਲ ਤਿੰਨ ਭਾਗਾਂ ਵਿੱਚ ਵੰਡੀ ਜਾ ਸਕਦੀ ਹੈ:
ਇਹ ਉਹ “ਸ਼ਾਂਤ” ਸਿਲਿਕਾਨ ਹੈ ਜੋ ਉਪਰਲੇ ਪੱਧਰ ਤੇ ਕਲਾਉਡ ਸੇਵਾਵਾਂ ਨੂੰ ਸਾਦਾ ਮਹਿਸੂਸ ਕਰਵਾਉਂਦਾ ਹੈ।
ਕਲਾਉਡ ਐਪਸ “ਸਾਫਟਵੇਅਰ-ਪਰਿਭਾਸ਼ਿਤ” ਜਿਹੇ ਮਹਿਸੂਸ ਹੁੰਦੇ ਹਨ, ਪਰ ਅਸਲੀ ਕੰਮ ਰੈਕਾਂ ਭਰ ਦੇ ਸਰਵਰ, ਸਵਿੱਚ ਅਤੇ ਸਟੋਰੇਜ ਵਿੱਚ ਹੁੰਦਾ ਹੈ। ਮੰਗ ਵਧਣ ਨਾਲ, ਕਲਾਉਡ ਜ਼ਿਆਦਾ ਤਰ General-purpose CPU ਤੇ ਹਰ ਕੰਮ ਨਹੀਂ ਚਲਾ ਸਕਦੇ ਬਿਨਾਂ ਲਾਗਤ ਅਤੇ ਬਿਹਤਰੀ ਵਿੱਚ ਸੀਮਾਵਾਂ ਆਉਣ ਦੇ।
AI ਟਰੇਨਿੰਗ ਅਤੇ ਇਨਫਰੈਂਸ ਡੇਟਾ ਸੈਟਾਂ ਨੂੰ ਡੇਟਾ ਸੈਂਟਰ 'ਚ ਵੱਡਾ ਅੰਸ਼ ਘੁਮਾਉਂਦੇ ਹਨ। ਵੀਡੀਓ ਸਟਰੀਮ, ਬੈਕਅਪ, ਐਨਾਲਿਟਿਕਸ ਅਤੇ SaaS ਪਲੇਟਫਾਰਮ ਨਾਲ ਪਿੱਛੋਂ ਲਗਾਤਾਰ ਬੋਝ ਹੁੰਦਾ ਹੈ। ਭਾਵੇਂ ਕੰਪਿਊਟ ਉਪਲਬਧ ਹੋਵੇ, ਜ਼ਿਆਦਾਤਰ ਸਮੇਂ ਬਾਟਲਨੇਕ ਡੇਟਾ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਮੂਵ/ਫਿਲਟਰ/ਇਨਕ੍ਰਿਪਟ/ਸਟੋਰ ਕਰਨ 'ਚ ਆ ਜਾਂਦਾ ਹੈ।
ਜ਼ਿਆਦਾਤਰ ਕਲਾਉਡ ਟ੍ਰੈਫਿਕ ਪਬਲਿਕ ਇੰਟਰਨੈਟ ਨੂੰ ਛੁਹਦੀ ਵੀ ਨਹੀਂ—ਇਹ ਸਰਵਿਸਾਂ ਵਿਚਕਾਰ "ਇਸਟ–ਵੇਸਟ" ਯਾਤਰਾ ਕਰਦੀ ਹੈ: ਮਾਈਕਰੋਸਰਵਿਸ-ਤੋਂ-ਮਾਈਕਰੋਸਰਵਿਸ ਕਾਲਾਂ, ਡੇਟਾਬੇਸ ਰੀਡ, ਕੈਸ਼ ਅੱਪਡੇਟ, ਸਟੋਰੇਜ ਰੀਪਲਿਕੇਸ਼ਨ ਅਤੇ ਵਿਤਰਿਤ AI ਵਰਕਲੋਡ। ਇਹ ਅੰਦਰੂਨੀ ਟ੍ਰੈਫਿਕ ਭਰੋਸੇਯੋਗ ਲੇਟੈਂਸੀ ਅਤੇ ਉੱਚ ਥਰਪੁੱਟ ਮੰਗਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਨੈਟਵਰਕ ਅਤੇ ਸਟੋਰੇਜ ਹਾਰਡਵੇਅਰ ਨੂੰ ਡੇਟਾ ਪਾਥ ਦੇ ਨੇੜੇ ਹੋਰ ਪ੍ਰੋਸੈਸਿੰਗ ਕਰਨ ਦੀ ਲੋੜ ਪੈਂਦੀ ਹੈ।
ਪਾਵਰ ਅਤੇ ਜਗ੍ਹਾ ਸਿਮਤ ਹੁੰਦੇ ਹਨ। ਜੇ ਇਕ ਕਲਾਉਡ ਪ੍ਰੋਵਾਈਡਰ ਪੈਕਟ ਪ੍ਰੋਸੈਸਿੰਗ, ਇਨਕ੍ਰਿਪਸ਼ਨ, ਕੰਪ੍ਰੈਸ਼ਨ ਜਾਂ ਸਟੋਰੇਜ ਚੈਕਸਮ ਵਰਗੇ ਕੰਮ ਨਿਰਧਾਰਤ ਸਿਲਿਕਾਨ 'ਤੇ ਓਫਲੋਡ ਕਰ ਸਕਦਾ ਹੈ, ਤਾਂ CPU ਘੱਟ ਓਵਰਹੈੱਡ ਲੈਂਦਾ ਹੈ। ਇਸ ਨਾਲ ਸੁਧਾਰ ਹੁੰਦੇ ਹਨ:
ਜਨਰਲ-ਪਰਪਜ਼ ਕੋਰਾਂ ਵਿੱਚ ਵਧਾਇਆ ਕਰਨ ਦੀ ਥਾਂ, ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਵਧਦਿਆਂ-ਵਧਦਿਆਂ ਉਦੇਸ਼-ਨਿਰਧਾਰਤ ਚਿਪਾਂ ਵਰਤ ਰਹੇ ਹਨ—Smart NICs/DPUs, ਸਵਿੱਚਿੰਗ ਸਿਲਿਕਾਨ, ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਅਤੇ ਐਕਸਲੇਰੇਟਰ—ਤਾਂ ਜੋ ਦੁਹਰਾਏ ਜਾਣ ਵਾਲੇ, ਉੱਚ-ਵਾਲੀਅਮ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਟਾਸਕ ਸੰਭਾਲੇ ਜਾ ਸਕਣ। ਨਤੀਜਾ: ਇੱਕ ਤੇਜ਼ ਅਤੇ ਸਸਤੀ ਚੱਲਣ ਵਾਲੀ ਕਲਾਉਡ, ਭਾਵੇਂ ਵਰਕਲੋਡ ਹੋਰ ਡੇਟਾ-ਭੁੱਖੇ ਹੋਣ।
ਕਲਾਉਡ ਸਰਵਰ ਅਚਾਨਕ ਹੈਰਾਨ ਕਰਨ ਵਾਲਾ ਸਮਾਂ "ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਕੰਮ" ਵਿੱਚ ਗੁਜ਼ਾਰਦੇ ਹਨ ਬਜਾਏ ਤੁਹਾਡੇ ਐਪ ਨੂੰ ਚਲਾਉਣ ਦੇ। ਹਰ ਪੈਕਟ ਨੂੰ ਹਿਲਾਉਣਾ, ਜਾਂਚਣਾ, ਲੌਗ ਕਰਨਾ ਅਤੇ ਕਈ ਵਾਰੀ ਇਨਕ੍ਰਿਪਟ ਕਰਨਾ ਪੈਂਦਾ ਹੈ—ਅਕਸਰ ਇਹ ਸਭ ਕੁਝ ਮੁੱਖ CPU ਨੂੰ ਕਰਨਾ ਪੈਂਦਾ ਸੀ। ਨੈਟਵਰਕਿੰਗ ਓਫਲੋਡ ਇਹਨਾਂ ਕੰਮਾਂ ਨੂੰ ਵਿਸ਼ੇਸ਼ ਹਾਰਡਵੇਅਰ 'ਤੇ ਸਵਿੱਚ ਕਰ ਦਿੰਦਾ ਹੈ, ਜਿੱਥੇ Smart NICs ਅਤੇ DPUs ਆਧੁਨਿਕ ਡੇਟਾ ਸੈਂਟਰਾਂ (ਜਿਨ੍ਹਾਂ ਵਿੱਚ Marvell ਸਿਲਿਕਾਨ ਨਾਲ ਬਣੇ ਸਿਸਟਮ ਵੀ ਸ਼ਾਮਲ ਹਨ) ਵਿੱਚ ਬਹੁਤ ਵਰਤੇ ਜਾਂਦੇ ਹਨ।
ਇੱਕ Smart NIC ਇੱਕ NIC ਹੈ ਜੋ ਸਿਰਫ ਬੇਸਿਕ ਭੇਜਣਾ/ਲੈਣਾ ਹੀ ਨਹੀਂ ਕਰਦੀ। ਰੁੜਕੀ ਈਥਰਨੇਟ ਪੋਰਟਾਂ ਦੇ ਨਾਲ-ਨਾਲ ਇਸ ਵਿੱਚ ਵਾਧੂ ਪ੍ਰੋਸੈਸਿੰਗ ਹੁੰਦੀ ਹੈ (ਅਕਸਰ Arm ਕੋਰ ਜਾਂ ਪ੍ਰੋਗ੍ਰਾਮੇਬਲ ਲੋਜਿਕ) ਤਾਂ ਜੋ ਨੈਟਵਰਕਿੰਗ ਫੀਚਰ ਕਾਰਡ 'ਤੇ ਹੀ ਚਲ ਸਕਣ।
ਇੱਕ DPU (Data Processing Unit) ਇੱਕ ਕਦਮ ਅੱਗੇ ਹੈ: ਇਹ ਸਰਵਰ ਦੇ ਅੰਦਰ ਇੱਕ ਨਿਰਧਾਰਤ “ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਕੰਪਿਊਟਰ” ਵਾਂਗ ਕੰਮ ਕਰਦਾ ਹੈ। DPU ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ਹਾਈ-ਪ੍ਰਦਰਸ਼ਨ ਨੈਟਵਰਕਿੰਗ, ਕਈ ਕੋਰ, ਹਾਰਡਵੇਅਰ ਐਕਸਲੇਰੇਟਰ ਅਤੇ ਮਜ਼ਬੂਤ ਅਲੱਗਾਵਣ ਵਾਸਤੇ ਫੀਚਰ ਹੁੰਦੇ ਹਨ, ਤਾਂ ਜੋ ਇਹ ਹੋਸਟ CPU 'ਤੇ ਨਿਰਭਰ ਨ ਰਹੇ।
ਸਰਲ ਮਾਨਸਿਕ ਮਾਡਲ:
ਓਫਲੋਡ ਉਹ ਕੰਮ ਹਨ ਜੋ ਦੁਹਰਾਏ ਜਾਂਦੇ ਹਨ ਅਤੇ ਜ਼ਿਆਦਾ ਹਾਰਡਵੇਅਰ ਸੰਸਾਧਨ ਲੈ ਰਹੇ ਹੋਣ:
ਜਦੋਂ CPU ਨੂੰ ਨੈਟਵਰਕਿੰਗ ਦੇ ਕੰਮ ਦੇਖਣੇ ਪੈਂਦੇ ਹਨ, ਤਾਂ ਐਪਲੀਕੇਸ਼ਨ ਪ੍ਰਦਰਸ਼ਨ ਟ੍ਰੈਫਿਕ ਸਪਾਈਕਸ, noisy neighbors ਜਾਂ ਸੁਰੱਖਿਆ ਕੰਮਾਂ ਦੇ ਕਾਰਨ ਘਟ ਜਾਂ ਵਧ ਸਕਦਾ ਹੈ। ਓਫਲੋਡ ਇਸਨੂੰ ਮਦਦ ਕਰਦਾ ਹੈ:
ਫਿਜ਼ਿਕਲ ਰੂਪ ਵਿੱਚ, DPUs ਆਮ ਤੌਰ 'ਤੇ ਇੱਕ PCIe ਐਡ-ਇਨ ਕਾਰਡ ਜਾਂ OCP NIC ਮੋਡੀਊਲ ਵਾਂਗ ਆਉਂਦੇ ਹਨ। ਇਹ ਜੁੜਦੇ ਹਨ:
ਕੰਸੈਪਚੁਅਲੀ, DPU ਨੈਟਵਰਕ ਅਤੇ ਸਰਵਰ ਦੇ ਵਿਚਕਾਰ ਇਕ “ਟ੍ਰੈਫਿਕ ਕੋਪ” ਬਣ ਜਾਂਦਾ ਹੈ—ਨੈਟਵਰਕ ਨੀਤੀਆਂ, ਇਨਕ੍ਰਿਪਸ਼ਨ ਅਤੇ ਸਵਿੱਚਿੰਗ ਨੂੰ ਸੰਭਾਲਦਾ ਹੈ ਤਾਂ ਜੋ ਹੋਸਟ OS ਅਤੇ CPU ਐਪਲੀਕੇਸ਼ਨ ਚਲਾਉਣ ਤਤਕਾਲ ਕੇਂਦ੍ਰਿਤ ਰਹਿਣ।
ਜਦੋਂ ਤੁਸੀਂ ਕੋਈ ਐਪ ਖੋਲ੍ਹਦੇ ਹੋ ਜਾਂ ਡੇਟਾ ਕਲਾਉਡ 'ਤੇ ਸੈਂਡ ਕਰਦੇ ਹੋ, ਤੁਹਾਡੀ ਬੇਨਤੀ ਆਮ ਤੌਰ 'ਤੇ "ਇੱਕ ਸਰਵਰ" ਤਕ ਨਹੀਂ ਜਾਂਦੀ—ਇਹ ਇਕ ਈਥਰਨੇਟ ਸਵਿੱਚ ਫੈਬਰਿਕ ਰਾਹੀਂ ਜਾਂਦੀ ਹੈ ਜੋ ਹਜ਼ਾਰਾਂ ਸਰਵਰਾਂ ਨੂੰ ਇੱਕ ਵੱਡੇ ਮਸ਼ੀਨ ਵਾਂਗ ਜੋੜਦਾ ਹੈ।
ਜ਼ਿਆਦਾਤਰ ਕਲਾਉਡ ਡੇਟਾ ਸੈਂਟਰ "leaf-spine" ਡਿਜ਼ਾਈਨ ਵਰਤਦੇ ਹਨ:
ਇਹ ਡਿਜ਼ਾਈਨ ਰਸਤੇਾਂ ਨੂੰ ਛੋਟਾ ਅਤੇ ਲਗਾਤਾਰ ਰੱਖਦਾ ਹੈ, ਜੋ ਕਿ ਪੈਮਾਨੇ 'ਤੇ ਪ੍ਰਦਰਸ਼ਨ ਲਈ ਕੁੰਜੀ ਹੈ।
ਦੋ ਨੰਬਰ ਯੂਜ਼ਰ ਅਨੁਭਵ ਅਤੇ ਲਾਗਤ ਨਿਰਧਾਰਤ ਕਰਦੇ ਹਨ:
ਕਲਾਉਡ ਓਪਰੇਟਰ ਲਿੰਕز ਭਿੜੇ ਹੋਏ ਹੋਣ 'ਤੇ ਵੀ ਲੇਟੈਂਸੀ ਸਥਿਰ ਰੱਖਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹਨ, ਨਾਲ ਹੀ ਵੱਡੇ ਮਾਤਰਾ ਦਾ ਟ੍ਰੈਫਿਕ ਹੋਵੋ।
ਇੱਕ ਈਥਰਨੇਟ ਸਵਿੱਚ ਚਿਪ ਸਿਰਫ ਪੈਕਟ "ਫਾਰਵਰਡ" ਹੀ ਨਹੀਂ ਕਰਦਾ। ਇਹਨੂੰ:
Vendors ਜਿਵੇਂ Marvell ਐਸੇ ਸਿਲਿਕਾਨ ਬਣਾਉਂਦੇ ਹਨ ਜੋ ਇਹ ਕੰਮ ਬਹੁਤ ਉੱਚ ਗਤੀ 'ਤੇ ਭਰੋਸੇਯੋਗ ਢੰਗ ਨਾਲ ਕਰਦੇ ਹਨ।
25/100G ਤੋਂ 200/400/800G ਲਿੰਕਸ 'ਤੇ ਜਾਣਾ ਸਿਰਫ਼ ਨੰਬਰ ਨਹੀਂ—ਉੱਚ ਗਤੀਆਂ ਦਾ ਮਤਲਬ ਹੋ ਸਕਦਾ ਹੈ:
ਨਤੀਜਾ ਇੱਕ ਐਸਾ ਨੈਟਵਰਕ ਹੈ ਜੋ ਤਾਰਾਂ ਵਾਂਗ ਨਹੀਂ ਲੱਗਦਾ, ਸਗੋਂ ਹਰ ਵਰਕਲੋਡ ਲਈ ਸਾਂਝਾ ਇੰਫਰਾਸਟਰੱਕਚਰ ਵਾਂਗ ਮਹਿਸੂਸ ਹੁੰਦਾ ਹੈ।
ਲੋਕ ਆਮ ਤੌਰ 'ਤੇ ਕਲਾਉਡ ਪ੍ਰਦਰਸ਼ਨ ਬਾਰੇ ਸੋਚਦੇ ਸਮੇਂ CPUs ਅਤੇ GPUs ਸੋਚਦੇ ਹਨ। ਪਰ ਬਹੁਤ ਸਾਰਾ "ਤੇਜ਼ੀ" ਅਤੇ ਭਰੋਸੇਯੋਗਤਾ ਉਸ ਸਟੋਰੇਜ ਸਿਲਿਕਾਨ ਨਾਲ ਨਿਰਧਾਰਿਤ ਹੁੰਦੀ ਹੈ ਜੋ ਫਲੈਸ਼ ਡਰਾਈਵਾਂ ਅਤੇ ਸਰਵਰ ਦੇ ਬੀਚ ਖੜਾ ਹੁੰਦਾ ਹੈ। ਉਹ ਲੇਅਰ ਆਮ ਤੌਰ 'ਤੇ ਇੱਕ ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਹੁੰਦੀ ਹੈ—ਮਕਸੂਸ ਚਿਪ ਜੋ ਡੇਟਾ ਕਿਵੇਂ ਲਿਖਿਆ/ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ, ਜਾਂਚਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਰੀਕਵਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਇਹ ਸਭ ਸੰਭਾਲਦੀ ਹੈ।
ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਤੁਸੀਂ ਲੀਖਣ ਦੀਆਂ ਆਮ ਬੇਨਤੀਆਂ ਨੂੰ ਛੋਟੇ ਹਿੱਸਿਆਂ ਵਿੱਚ ਵੰਡਦਾ ਹੈ, ਰੀਡ/ਰਾਈਟ ਸ਼ੈਡਿਊਲ ਕਰਦਾ ਹੈ ਤਾਂ ਕਿ ਹੌਟ ਡੇਟਾ ਤੇਜ਼ੀ ਨਾਲ ਵਾਪਸ ਆਵੇ, ਅਤੇ ਲੱਗਾਤਾਰ ਇੰਟੈਗ੍ਰਿਟੀ ਚੈੱਕ ਚਲਾਉਂਦਾ ਹੈ ਤਾਂ ਕਿ ਛੋਟੀ ਤਰੁੱਟੀਆਂ ਵੱਡੀਆਂ ਫਾਈਲ-ਕਰਪਸ਼ਨ ਵਿੱਚ ਨਾ ਬਦਲਣ।
ਇਹ ਉਹ ਅਣਗਲੇਮਰਸ ਕੰਮ ਵੀ ਕਰਦਾ ਹੈ ਜੋ ਵੱਡੇ ਪੈਮਾਨੇ 'ਤੇ ਸਟੋਰੇਜ ਨੂੰ ਪੇਸ਼ਗੀ ਬਣਾਉਂਦੇ ਹਨ: ਲਾਜ਼ਮੀ-ਲੋਜਿਕਲ ਬਲਾਕਾਂ ਨੂੰ ਫਿਜ਼ਿਕਲ ਫਲੈਸ਼ ਥਾਂਵਾਂ ਨਾਲ ਮੈਪ ਕਰਨਾ, ਵ੍ਹੀਅਰ ਲੈਵਲਿੰਗ, ਅਤੇ ਜਦੋਂ ਬਹੁਤ ਸਾਰੀਆਂ ਐਪ ਓਸੇ ਸਟੋਰੇਜ ਪੂਲ ਨੂੰ ਹਿੱਟ ਕਰਦੀਆਂ ਹਨ ਤਾਂ ਲੇਟੈਂਸੀ ਸਥਿਰ ਰੱਖਣਾ।
NVMe protocol ਫਲੈਸ਼ ਲਈ ਘੱਟ ਓਵਰਹੈੱਡ ਅਤੇ ਬਹੁ-ਕਤਾਰਾਂ ਦੀ ਸਮਰੱਥਾ ਦਿੰਦਾ ਹੈ—ਜਿਸ ਦਾ ਮਤਲਬ ਇਹ ਹੈ ਕਿ ਕਈ ਓਪਰੇਸ਼ਨ ਇਕੱਠੇ ਚੱਲ ਸਕਦੀਆਂ ਹਨ, ਜੋ ਕਿ ਕਲਾਉਡ ਵਰਕਲੋਡਾਂ ਲਈ ਬਹੁਤ موزੂ ਹੈ ਜਿੱਥੇ ਹਜ਼ਾਰਾਂ ਛੋਟੀਆਂ I/O ਇੱਕੱਠੇ ਹੋ ਸਕਦੀਆਂ ਹਨ।
ਕਲਾਉਡ ਪ੍ਰੋਵਾਈਡਰਾਂ ਲਈ NVMe ਸਿਰਫ਼ ਪੀਕ ਥਰਪੁੱਟ ਬਾਰੇ ਨਹੀਂ; ਇਹ ਲੋਡ 'ਤੇ ਲਗਾਤਾਰ ਘੱਟ ਲੇਟੈਂਸੀ ਦੇਨੇ ਬਾਰੇ ਹੈ—ਜੋ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਜਵਾਬਦਾਰ ਮਹਿਸੂਸ ਕਰਵਾਉਂਦਾ ਹੈ।
ਆਧੁਨਿਕ ਕੰਟਰੋਲਰ ਅਕਸਰ ਉਹ ਹਾਰਡਵੇਅਰ ਫੀਚਰ ਸ਼ਾਮਲ ਕਰਦੇ ਹਨ ਜੋ ਨਹੀਂ ਤਾਂ CPU ਸਾਈਕਲ ਖਾਂਦੇ:
ਸਟੋਰੇਜ ਇੱਕ ਅਲੱਗ ਸਬਸਿਸਟਮ ਨਹੀਂ ਹੈ—ਇਹ ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੇ ਵਿਵਹਾਰ ਨੂੰ ਰੂਪ ਦਿੰਦਾ ਹੈ:
ਸੰਖੇਪ ਵਿੱਚ, ਸਟੋਰੇਜ ਸਿਲਿਕਾਨ ਹੀ ਕੱਚੇ ਫਲੈਸ਼ ਨੂੰ ਭਰੋਸੇਯੋਗ, ਉੱਚ-ਥਰਪੁੱਟ ਕਲਾਉਡ ਇਨਫਰਾਸਟਰੱਕਚਰ ਵਿੱਚ ਬਦਲਦਾ ਹੈ।
ਜਦੋਂ ਕਲਾਉਡ ਪ੍ਰੋਵਾਈਡਰ ਸਰਵਰ ਅਪਗਰੇਡ ਕਰਦੇ ਹਨ, ਉਹ ਸਿਰਫ CPU ਨਹੀਂ ਬਦਲਦੇ। ਉਹ ਉਹ “ਜੁੜਨ ਵਾਲੀ ਦੂਸੀ ਚੀਜ਼” ਵੀ ਵੇਖਦੇ ਹਨ ਜੋ CPU ਨੂੰ ਨੈੱਟਵਰਕ ਕਾਰਡ, ਸਟੋਰੇਜ ਅਤੇ ਐਕਸਲੇਰੇਟਰ ਨਾਲ ਤੇਜ਼ੀ ਨਾਲ ਗੱਲ-ਬਾਤ ਕਰਨ ਦਿੰਦਾ ਹੈ ਬਿਨਾਂ ਪੂਰੇ ਸਰਵਰ ਡਿਜ਼ਾਈਨ ਨੂੰ ਦੁਬਾਰਾ ਬਣਾਉਣ ਦੇ। ਇਸੀ ਲਈ PCIe ਅਤੇ CXL ਵਰਗੇ ਮਿਆਰ ਮਾਇਨੇ ਰੱਖਦੇ ਹਨ: ਇਹ ਹਿੱਸਿਆਂ ਨੂੰ ਇੰਟਰਓਪਰੇਬਲ ਰੱਖਦੇ ਹਨ, ਅਪਗਰੇਡਸ ਘੱਟ ਜੋਖਮ ਵਾਲੇ ਬਣਾਉਂਦੇ ਹਨ, ਅਤੇ ਡੇਟਾ ਸੈਂਟਰਾਂ ਨੂੰ ਪੇਮਾਨੇ 'ਤੇ ਸਥਿਰ ਤਰੀਕੇ ਨਾਲ ਵਧਣ ਵਿੱਚ ਮਦਦ ਕਰਦੇ ਹਨ।
PCIe (Peripheral Component Interconnect Express) ਉਹ ਮੂਲ ਅੰਦਰੂਨੀ ਲਿੰਕ ਹੈ ਜੋ ਉਪਕਰਣਾਂ ਨੂੰ ਜੋੜਦਾ ਹੈ ਜਿਵੇਂ:
ਇੱਕ ਸਹਾਇਕ ਮਨਸਿਕ ਤਸਵੀਰ: PCIe ਹਾਈਵੇ ਵਿੱਚ ਹੋਰ ਲੇਨ ਜੋੜਨ ਵਰਗੀ ਹੈ। ਨਵੇਂ PCIe ਜਨਰੇਸ਼ਨ ਹਰ ਲੇਨ ਦੀ ਗਤਿ ਵਧਾਉਂਦੇ ਹਨ, ਅਤੇ ਵਿਆਪਕ ਲਿੰਕ (x8, x16) ਕੁੱਲ ਸਮਰੱਥਾ ਵਧਾਉਂਦੇ ਹਨ। ਕਲਾਉਡ ਓਪਰੇਟਰਾਂ ਲਈ, ਇਹ ਡਾਇਰੈਕਟ ਪ੍ਰਭਾਵ ਪਾਉਂਦਾ ਹੈ ਕਿ ਕੰਪਿਊਟ ਅਤੇ ਡਿਵਾਈਸਾਂ ਵਿਚਕਾਰ ਡੇਟਾ ਕਿੰਨੀ ਤੇਜ਼ੀ ਨਾਲ ਬਦਲ ਸਕਦਾ ਹੈ।
Marvell ਦਾ ਇਨਫਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ ਅਕਸਰ ਇਨ੍ਹਾਂ PCIe ਕਨੈਕਸ਼ਨਾਂ 'ਤੇ ਬੈਠਦਾ ਹੈ—ਇੱਕ NIC, DPU, ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਜਾਂ ਸਵਿੱਚ-ਸੰਬੰਧੀ ਘਟਕ ਦੇ ਅੰਦਰ—ਤਾਂ ਜੋ PCIe ਸਮਰੱਥਾ ਅਕਸਰ ਪ੍ਰਦਰਸ਼ਨ ਅਪਗਰੇਡ ਲਈ ਸੀਮਾ (ਜਾਂ ਸਹਾਇਕ) ਬਣ ਸਕਦੀ ਹੈ।
CXL (Compute Express Link) PCIe ਫਿਜ਼ਿਕਲ ਕਨੈਕਸ਼ਨ 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ ਪਰ ਨਵੇਂ ਤਰੀਕੇ ਜੋੜਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਨਾਲ ਡਿਵਾਈਸਾਂ ਘੱਟ ਓਵਰਹੈੱਡ ਨਾਲ ਮੈਮਰੀ-ਜੈਸੀ ਸਰੋਤ ਸਾਂਝੇ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਆਮ ਸ਼ਬਦਾਂ ਵਿੱਚ, CXL ਸਰਵਰਾਂ ਨੂੰ ਕੁਝ ਬਾਹਰੀ ਸਰੋਤਾਂ (ਜਿਵੇਂ ਮੈਮਰੀ ਐਕਸਪੈਂਸ਼ਨ ਜਾਂ ਪੂਲਡ мੈਮੋਰੀ) ਨੂੰ ਲੋਕਲ ਵਿਅਵਸਥਾ ਵਾਂਗ ਵਰਤਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ।
ਨਤੀਜਾ ਸਿਰਫ਼ “ਤੇਜ਼” ਨਹੀਂ:
ਕਨੇਕਟੀਵਿਟੀ ਮਿਆਰ ਸਰਕਲੀ ਛਾਪ ਨਹੀਂ ਪਾਉਂਦੇ, ਪਰ ਇਹ ਨਿਰਧਾਰਤ ਕਰਦੇ ਹਨ ਕਿ ਕਿੰਨੀ ਤੇਜ਼ੀ ਨਾਲ ਕਲਾਉਡ ਨਵੀਨਤਮ ਨੈਟਵਰਕਿੰਗ, ਸਟੋਰੇਜ ਅਤੇ ਐਕਸਲੇਰੇਸ਼ਨ ਅਪਣਾਂ ਸਕਦੀ ਹੈ।
“ਕਸਟਮ ਐਕਸਲੇਰੇਸ਼ਨ” ਹਮੇਸ਼ਾ ਇਕ ਵੱਡੇ, ਜਨਰਲ-ਪਰਪਜ਼ GPU ਦਾ ਮਤਲਬ ਨਹੀਂ ਹੁੰਦਾ। ਅਕਸਰ ਇਹ ਮਤਲਬ ਹੈ ਛੋਟੇ, ਵਿਸ਼ੇਸ਼ ਕੰਪਿਊਟ ਬਲਾਕ ਜੋ ਇਕ ਦੁਹਰਾਏ ਜਾਣ ਵਾਲੇ ਟਾਸਕ ਨੂੰ ਤੇਜ਼ ਕਰਦੇ ਹਨ—ਤਾਂ ਜੋ CPU ਆਪਣੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ 'ਤੇ ਧਿਆਨ ਦੇ ਸਕੇ।
ਕਲਾਉਡ ਵਰਕਲੋਡ ਬਹੁਤ ਵੱਖ-ਵੱਖ ਹੁੰਦੇ ਹਨ: ਇੱਕ ਸਟੋਰੇਜ-ਭਾਰ ਵਾਲਾ ਡੇਟਾਬੇਸ ਨੋਡ, ਇੱਕ ਵੀਡੀਓ ਸਟਰੀਮਿੰਗ ਏਜ ਬਾਕਸ ਜਾਂ ਫਾਇਰਵਾਲ ਅਪਲਾਇੰਸ—ਹਰ ਇਕ ਦੇ ਵੱਖਰੇ ਰੁਕਾਵਟਾਂ ਹੁੰਦੀਆਂ ਹਨ। ਮਕਸੂਸ ਸਿਲਿਕਾਨ ਉਹ ਰੁਕਾਵਟਾਂ ਨਿਸ਼ਾਨੇ 'ਤੇ ਲਿਆਂਦਾ ਹੈ—ਅਕਸਰ ਕਿਸੇ ਫੰਕਸ਼ਨ ਨੂੰ ਹਾਰਡਵੇਅਰ ਵਿੱਚ ਚਲਾਕੇ ਤਾਂ ਜੋ ਉਹ ਤੇਜ਼, ਜ਼ਿਆਦਾ ਨਿਰਧਾਰਤ ਅਤੇ ਘੱਟ CPU ਓਵਰਹੈੱਡ ਨਾਲ ਚੱਲੇ।
ਕਈ ਪ੍ਰਾਇਕਟਿਕ ਵਰਗ ਘਟਕੇ-ਘਟਕੇ ਡੇਟਾ ਸੈਂਟਰਾਂ ਵਿੱਚ ਮੁੜ-ਮਿਲਦੇ ਹਨ:
ਵੱਡੀਆਂ ਕਲਾਉਡ ਟੀਮਾਂ ਆਮ ਤੌਰ 'ਤੇ ਪ੍ਰੋਫਾਈਲਿੰਗ ਨਾਲ ਸ਼ੁਰੂ ਕਰਦੀਆਂ ਹਨ: ਕਿੱਥੇ অনੁਰੋਧ ਰੁਕਦਾ ਹੈ ਅਤੇ ਕਿਹੜੇ ਟਾਸਕ ਲੱਖਾਂ ਵਾਰੀ ਦੁਹਰਾਏ ਜਾਂਦੇ ਹਨ? ਫਿਰ ਉਹ ਫੈਸਲਾ ਕਰਦੇ ਹਨ ਕਿ ਕਿਆ ਪ੍ਰੋਗ੍ਰਾਮੇਬਲ ਇੰਜਿਨ (ਜਿਆਦਾ ਅਨੁਕੂਲ) ਜਾਂ ਫਿਕਸਡ-ਫੰਕਸ਼ਨ ਬਲਾਕ (ਸਭ ਤੋਂ ਵਧੀਆ ਕਾਰਗਰਤਾ) ਵਰਤਣਾ ਹੈ। ਵਿਕਰੇਤਾ ਜਿਵੇਂ Marvell ਅਕਸਰ ਨੈਟਵਰਕਿੰਗ, ਸੁਰੱਖਿਆ ਅਤੇ ਸਟੋਰੇਜ ਇੰਟਰਫੇਸ ਦੇ ਬਿਲਡਿੰਗ ਬਲਾਕ ਦਿੰਦੇ ਹਨ ਤਾਂ ਕਿ “ਕਸਟਮ” ਹਿੱਸਾ ਕਲਾਉਡ ਦੇ ਖਾਸ ਹੌਟ ਪੈਥਾਂ 'ਤੇ ਧਿਆਨ ਦੇ ਸਕੇ।
ਫਿਕਸਡ-ਫੰਕਸ਼ਨ ਐਕਸਲੇਰੇਸ਼ਨ ਆਮ ਤੌਰ 'ਤੇ ਪਰਫਾਰਮੈਂਸ ਪ੍ਰਤੀ ਵੱਟ ਅਤੇ ਨਿਰਧਾਰਿਤਤਾ 'ਚ ਜਿੱਤਦਾ ਹੈ, ਪਰ ਜਦੋਂ ਵਰਕਲੋਡ ਬਦਲ ਜਾਂਦਾ ਹੈ ਤਾਂ ਉਸਨੂੰ ਫਿਰ ਵਰਤਣਾ ਮੁਸ਼ਕਲ ਹੁੰਦਾ ਹੈ। ਪ੍ਰੋਗ੍ਰਾਮੇਬਲ ਵਿਕਲਪ ਅਸਾਨੀ ਨਾਲ ਬਦਲ ਜਾਂਦੇ ਹਨ, ਪਰ ਸ਼ਾਇਦ ਜ਼ਿਆਦਾ ਪਾਵਰ ਖਾਂਦੇ ਹਨ ਅਤੇ ਕੁਝ ਪ੍ਰਦਰਸ਼ਨ ਛੱਡ ਦਿੰਦੇ ਹਨ। ਸਭ ਤੋਂ ਵਧੀਆ ਡਿਜ਼ਾਈਨ ਦੋਹਾਂ ਮਿਲਾ ਕੇ ਹੁੰਦੇ ਹਨ: ਜਿੱਥੇ ਲੋੜ ਹੋਵੇ ਉਤੇਜ਼ ਹਾਰਡਵੇਅਰ ਫਾਸਟ ਪਾਥ ਅਤੇ ਕੰਟਰੋਲ ਪਲੇਨ ਨੂੰ ਲਚਕੀਲਾ ਰੱਖਣਾ।
ਡੇਟਾ ਸੈਂਟਰ ਵਿੱਚ ਅਕਸਰ ਅਸਲ ਸੀਮਾ ਪਾਵਰ ਹੁੰਦੀ ਹੈ—ਨਾ ਕਿ ਸਿਰਫ਼ ਤੁਹਾਡੇ ਕੋਲ ਖਰੀਦਣ ਲਈ ਹੋਰ ਸਰਵਰ ਹਨ, بلکہ ਉਹ ਕਿੰਨੀ ਬਿਜਲੀ ਤੁਸੀਂ ਦੇ ਸਕਦੇ ਅਤੇ ਗਰਮੀ ਕਿੰਨੀ ਹਟਾ ਸਕਦੇ ਹੋ। ਜਦੋਂ ਇੱਕ ਸਹੂਲਤ ਆਪਣਾ ਪਾਵਰ ਐਨਵਲਪਟ ਹਿੱਟ ਕਰ ਲੈਂਦੀ ਹੈ, ਤਾਂ ਵਧਾਉਣ ਦਾ ਇਕਮਾਤਰ ਤਰੀਕਾ ਹੈ ਹਰ ਵੱਟ ਤੋਂ ਵਧੇਰਾ ਉਪਯੋਗੀ ਕੰਮ ਪ੍ਰਾਪਤ ਕਰਨਾ।
ਜਨਰਲ-ਪਰਪਜ਼ CPU ਲਚਕੀਲੇ ਹੁੰਦੇ ਹਨ, ਪਰ ਇਹ ਹਮੇਸ਼ਾ ਦੁਹਰਾਏ ਜਾਣ ਵਾਲੇ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਕੰਮਾਂ ਲਈ ਕਾਰਗਰ ਨਹੀਂ ਹੁੰਦੇ—ਜਿਵੇਂ ਪੈਕਟ ਹੈਂਡਲਿੰਗ, ਇਨਕ੍ਰਿਪਸ਼ਨ, ਸਟੋਰੇਜ ਪ੍ਰੋਟੋਕੋਲ ਪ੍ਰੋਸੈਸਿੰਗ ਜਾਂ ਟੈਲੀਮੈਟਰੀ। ਮਕਸੂਸ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ (Smart NICs/DPUs, ਸਵਿੱਚ ਅਤੇ ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ) ਇਹ ਕੰਮ ਘੱਟ ਸਾਈਕਲ ਅਤੇ ਘੱਟ ਖਰਚ 'ਤੇ ਕਰ ਸਕਦੇ ਹਨ।
ਉਰਜਾ ਦਾ ਫਾਇਦਾ ਅਕਸਰ ਅਪਰੋਕਸ਼ ਹੁੰਦਾ ਹੈ: ਜੇ ਓਫਲੋਡ CPU ਉਪਯੋਗ ਘਟਾਉਂਦਾ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਇੱਕੋ ਵਰਕਲੋਡ ਘੱਟ CPU ਕੋਰ/ਘੱਟ ਕਲਾਕ ਗਤੀ ਜਾਂ ਘੱਟ ਸਰਵਰਾਂ ਨਾਲ ਚਲਾ ਸਕਦੇ ਹੋ। ਇਹ ਮੈਮੋਰੀ ਦਬਾਅ ਅਤੇ PCIe ਟ੍ਰੈਫਿਕ ਨੂੰ ਵੀ ਘਟਾਉਂਦਾ, ਜੋ ਹੋਰ ਬਿਜਲੀ ਬਚਾਉਂਦਾ।
ਹਰ ਵੱਟ ਗਰਮੀ ਬਣਾਉਂਦਾ ਹੈ। ਵੱਧ ਗਰਮੀ ਤੇਜ਼ ਫੈਨ, ਹੋਰ ਕੁਲਿੰਗ ਅਤੇ ਰੈਕ-ਸਤੰਭ ਯੋਜਨਾ ਮੰਗਦੀ ਹੈ। ਉੱਚ-ਡੈਂਸਿਟੀ ਰੈਕ ਆਕਰਸ਼ਕ ਹੋ ਸਕਦੇ ਹਨ, ਪਰ ਕੇਵਲ ਜਦੋਂ ਤੁਹਾਡੇ ਕੋਲ ਉਸਨੂੰ ਸਮਾਨਤਾਪੂਰਵਕ ਠੰਡਾ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਹੋਵੇ। ਇਸੀ ਲਈ ਚਿੱਪ ਚੋਣ ਰਾਸ਼ਟੀ throughput ਤੋਂ ਇਲਾਵਾ ਮਹੱਤਵ ਰੱਖਦੀ ਹੈ: ਇੱਕ ਕੰਪੋਨੈਂਟ ਜੋ ਘੱਟ ਪਾਵਰ ਖਰਚ ਕਰਦਾ ਹੈ ਜਾਂ ਉੱਚ ਲੋਡ 'ਤੇ ਵੀ ਕੂशल ਰਹਿੰਦਾ ਹੈ, ਓਪਰੇਟਿਅਰਾਂ ਨੂੰ ਇੱਕੋ ਫੁੱਟਪ੍ਰਿੰਟ ਵਿੱਚ ਹੋਰ ਸਮਰੱਥਾ ਪੈਕ ਕਰਨ ਦਿੰਦਾ ਹੈ ਬਿਨਾਂ ਹਾਟ-ਸਪੌਟ ਬਣਾਉਣ ਦੇ।
“ਬਿਹਤਰ ਪਰਫਾਰਮੈਂਸ ਪ੍ਰਤੀ ਵੱਟ” ਦੇ ਦਾਅਵੇ ਆਸਾਨੀ ਨਾਲ ਮਾਰਕੀਟ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ ਪਰ ਤੁਲਨਾ ਕਰਨਾ ਮੁਸ਼ਕਲ ਹੁੰਦਾ ਹੈ। ਜਦੋਂ ਤੁਸੀਂ ਇਹ ਵੇਖੋ, ਤਾਂ ਧਿਆਨ ਰੱਖੋ:
ਸਭ ਤੋਂ ਭਰੋਸੇਯੋਗ ਦਾਅਵੇ ਉਹ ਹੁੰਦੇ ਹਨ ਜੋ ਵਾਧੂ ਵਾਟਾਂ ਨੂੰ ਇੱਕ ਨਿਰਧਾਰਤ, ਦੁਹਰਾਏ ਜਾਣ ਯੋਗ ਵਰਕਲੋਡ ਨਾਲ ਜੁੜ ਕੇ ਦਿਖਾਏਂ—ਨਾ ਕਿ ਸਿਰਫ਼ ਸਪੀਕ-ਸ਼ੀਟ 'ਤੇ।
ਕਲਾਉਡ ਪ੍ਰੋਵਾਈਡਰ ਹੌਫ਼ਤਾਂ 'ਤੇ ਬਹੁਤ ਸਾਰੇ ਗ੍ਰਾਹਕ ਇੱਕੋ ਹੀ ਭੌਤਿਕ ਮਸ਼ੀਨਾਂ ਵਰਤਦੇ ਹਨ, ਇਸ ਲਈ ਸੁਰੱਖਿਆ ਨੂੰ "ਬਾਅਦ ਵਿੱਚ ਜੋੜਨਾ" ਸੰਭਵ ਨਹੀਂ। ਬਹੁਤ ਕੁਝ ਚਿੱਪ ਲੇਅਰ 'ਤੇ ਲਾਗੂ ਹੁੰਦਾ ਹੈ—Smart NICs/DPUs, ਨੈਟਵਰਕਿੰਗ ਚਿਪਸ, ਈਥਰਨੇਟ ਸਵਿੱਚਿੰਗ ਸਿਲਿਕਾਨ ਅਤੇ ਸਟੋਰੇਜ ਕੰਟਰੋਲਰਾਂ ਵਿੱਚ—ਜਿੱਥੇ ਹਾਰਡਵੇਅਰ ਓਫਲੋਡ ਸੁਰੱਖਿਆ ਨੂੰ ਫੁੱਲ ਲਾਈਨ ਰੇਟ 'ਤੇ ਲਾਗੂ ਕਰ ਸਕਦਾ ਹੈ।
ਅਕਸਰ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ ਵਿੱਚ ਇੱਕ ਹਾਰਡਵੇਅਰ ਰੂਟ ਆਫ ਟ੍ਰੱਸਟ ਹੁੰਦਾ ਹੈ: ਇੱਕ ਛੋਟਾ, ਅਪਰਿਵਰਤਨੀ ਲੌਜਿਕ ਅਤੇ ਕੁੰਜੀਆਂ ਦਾ ਸੈੱਟ ਜੋ ਫਰਮਵੇਅਰ ਨੂੰ ਵੈਰੀਫਾਈ ਕਰਦਾ ਹੈ ਪਹਿਲਾਂ ਹੀ ਕਿ ਕੁਝ ਹੋਰ ਚੱਲੇ। ਸੁਰੱਖਿਅਤ ਬੂਟ ਨਾਲ, ਚਿਪ ਆਪਣੇ ਫਰਮਵੇਅਰ 'ਤੇ ਕਾਰਪਟੋਗ੍ਰਾਫਿਕ ਦਸਤਖਤ ਚੈੱਕ ਕਰਦੀ ਹੈ (ਅਤੇ ਕਈ ਵਾਰੀ ਹੋਸਟ ਦੀਆਂ ਬੂਟ ਲੋੜਾਂ ਨੂੰ ਵੀ) ਅਤੇ ਤਬਦੀਲ ਹੋਇਆ ਜਾਂ ਅਣਜਾਣਾ ਕੋਡ ਚਲਾਉਣ ਤੋਂ ਇਨਕਾਰ ਕਰਦੀ ਹੈ।
ਇਹ ਮਹੱਤਵਪੂਰਣ ਹੈ ਕਿਉਂਕਿ ਇੱਕ ਸਮਰਪਿਤ DPU ਜਾਂ ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਤੁਹਾਡੇ ਸਰਵਰਾਂ ਅਤੇ ਨੈਟਵਰਕ/ਸਟੋਰੇਜ ਫੈਬਰਿਕ ਦੇ ਵਿਚਕਾਰ "ਬੈਠ" ਸਕਦਾ ਹੈ। ਸੁਰੱਖਿਅਤ ਬੂਟ ਉਸ ਲੇਅਰ 'ਤੇ ਛੁਪੇ ਰਹਿਣ ਵਾਲੇ ਖਤਰਨਾਕ ਕੋਡ ਦੇ ਜੋਖਮ ਨੂੰ ਘੱਟ ਕਰਦਾ ਹੈ।
ਇਨਕ੍ਰਿਪਸ਼ਨ ਅਕਸਰ ਸਿੱਧਾ ਸਿਲਿਕਾਨ ਵਿੱਚ ਤੇਜ਼ੀ ਨਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਕਿ ਇਹ CPU ਸਮਾਂ ਨਾ ਖਾਏ:
ਇਨਲਾਈਨ ਹੋਣ ਕਾਰਨ, ਸੁਰੱਖਿਆ ਦਾ ਮਤਲਬ ਹੁਣ "ਧੀਮਾ" ਨਹੀਂ ਰਹਿੰਦਾ।
ਮਲਟੀ-ਟੈਨੈਂਟ ਕਲਾਉਡਾਂ ਨੂੰ ਕੜੀ ਅਲੱਗਾਵਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਚਿਪ ਹਾਰਡਵੇਅਰ ਕਿਊਜ਼, ਮੈਮੋਰੀ ਸੁਰੱਖਿਆ, ਵਰਚੁਅਲ ਫਂਕਸ਼ਨ ਅਤੇ ਨੀਤਿ ਲਾਗੂ ਕਰਕੇ ਇਹ ਅਲੱਗਾਵਣ ਲਾਗੂ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰ ਸਕਦੇ ਹਨ—ਤਾਂ ਜੋ ਇੱਕ ਟੇਨੈਂਟ ਦੀ ਟ੍ਰੈਫਿਕ ਜਾਂ ਸਟੋਰੇਜ ਰਿਕਵੇਸਟ ਦੂਜੇ ਦੀ ਨਿਗਰਾਨੀ ਵਿੱਚ ਨਾ ਪahunche. ਇਹ ਖਾਸ ਕਰਕੇ ਅਹਿਮ ਹੈ ਜਦੋਂ DPUs ਵਰਚੁਅਲ ਨੈਟਵਰਕਿੰਗ ਨੂੰ ਸੰਭਾਲਦੇ ਹਨ ਅਤੇ ਜਦੋਂ PCIe ਡਿਵਾਈਸਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ ਵਰਕਲੋਡਾਂ ਵਿੱਚ ਸਾਂਝਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਭਰੋਸੇਯੋਗਤਾ ਸਿਰਫ਼ "ਕੋਈ ਫੇਲ੍ਹਰ ਨਹੀਂ" ਨਹੀਂ ਹੈ—ਇਹ ਤੇਜ਼ ਪਤਾ ਲਗਾਉਣਾ ਅਤੇ ਰੀਕਵਰੀ ਹੈ। ਬਹੁਤ ਸਾਰੇ ਡੇਟਾ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ ਡਿਜ਼ਾਈਨਾਂ ਵਿੱਚ ਟੈਲੀਮੈਟਰੀ ਕਾਊਂਟਰ, ਐਰਰ ਰਿਪੋਰਟਿੰਗ, ਪੈਕਟ ਟ੍ਰੇਸਿੰਗ ਹੂਕਸ ਅਤੇ ਹੈਲਥ ਮੈਟ੍ਰਿਕਸ ਹੁੰਦੀਆਂ ਹਨ ਜੋ ਕਲਾਉਡ ਟੀਮਾਂ ਮਾਨੀਟਰਿੰਗ ਸਿਸਟਮਾਂ ਵਿੱਚ ਭੇਜ ਸਕਦੀਆਂ ਹਨ। ਜਦੋਂ ਕੁਝ ਗੜਬੜ ਹੁੰਦੀ ਹੈ (ਡ੍ਰਾਪ, ਲੇਟੈਂਸੀ ਸਪਾਈਕ, ਲਿੰਕ ਐਰਰ), ਇਹ ਨਿਰਮਿਤ ਸਿਗਨਲ ਇਹ ਪਤਾ ਲਗਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਦੇ ਹਨ ਕਿ ਸਮੱਸਿਆ ਈਥਰਨੇਟ ਸਵਿੱਚਿੰਗ, DPU ਜਾਂ ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਵਿੱਚੋਂ ਕਿੱਥੇ ਆ ਰਹੀ ਹੈ—ਜਿਸ ਨਾਲ ਸਮੱਸਿਆ ਹੱਲ ਕਰਨ ਦਾ ਸਮਾਂ ਘੱਟ ਹੁੰਦਾ ਅਤੇ ਕੁੱਲ ਉਪਲਬਧਤਾ ਸੁਧਰਦੀ ਹੈ।
ਇੱਕ ਸਧਾਰਨ ਕਰਾਰ: ਤੁਸੀਂ ਸ਼ਾਪਿੰਗ ਐਪ ਖੋਲ੍ਹਦੇ ਹੋ ਅਤੇ “View order history” 'ਤੇ ਟੈਪ ਕਰਦੇ ਹੋ। ਇਹ ਇੱਕ ਬੇਨਤੀ ਕਈ ਸਿਸਟਮਾਂ ਰਾਹੀਂ ਜਾਂਦੀ ਹੈ—ਤੇ ਹਰ ਕਦਮ 'ਤੇ ਦੇਰ ਹੋ ਸਕਦੀ ਹੈ।
ਤੁਹਾਡੀ ਬੇਨਤੀ ਕਲਾਉਡ ਐਜ ਅਤੇ ਲੋਡ ਬੈਲੈਂਸਰ ਤੇ ਪਹੁੰਚਦੀ ਹੈ। ਪੈਕਟ ਇੱਕ ਸਿਹਤਮੰਦ ਐਪਲੀਕੇਸ਼ਨ ਸਰਵਰ ਵੱਲ ਰੂਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਇਹ ਐਪ ਹੋਸਟ ਤੱਕ ਪਹੁੰਚਦੀ ਹੈ। ਰਵਾਇਤੀ ਤੌਰ 'ਤੇ, ਹੋਸਟ CPU ਕਾਫੀ “ਪਲੰਬਿੰਗ” ਕੰਮ (ਇਨਕ੍ਰਿਪਸ਼ਨ, ਫਾਇਰਵਾਲ ਨੀਤੀਆਂ, ਵਰਚੁਅਲ ਨੈਟਵਰਕਿੰਗ, ਕਤਰਬੰਦੀ) ਦਿਖਾਉਂਦਾ ਹੈ।
ਐਪ ਡੇਟਾਬੇਸ ਨੂੰ ਪੁੱਛਦਾ ਹੈ। ਉਹ ਪੁੱਛਗਿੱਛ ਡੇਟਾ ਸੈਂਟਰ ਨੈਟਵਰਕ ਰਾਹੀਂ ਡੇਟਾਬੇਸ ਕਲੱਸਟਰ ਤੱਕ ਜਾਣੀ ਅਤੇ ਫਿਰ ਸਟੋਰੇਜ ਤੋਂ ਡੇਟਾ ਲਿਆਉਣੀ ਪੈਦੀ ਹੈ।
ਜਵਾਬ ਵਾਪਿਸ ਆਉਂਦਾ ਹੈ। ਨਤੀਜੇ ਪੈਕੇਜ ਕੀਤੇ, ਇਨਕ੍ਰਿਪਟ ਕੀਤੇ ਅਤੇ ਤੁਹਾਡੇ ਫੋਨ ਨੂੰ ਭੇਜੇ ਜਾਂਦੇ ਹਨ।
Smart NICs/DPUs ਅਤੇ ਵਿਸ਼ੇਸ਼ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ (ਜਿਨ੍ਹਾਂ ਵਿੱਚ Marvell ਫ਼ਿਲਸਾਨ ਵੀ ਸ਼ਾਮਲ ਹਨ) ਦੁਹਰਾਏ ਜਾਣ ਵਾਲੇ ਕੰਮਾਂ ਨੂੰ ਜਨਰਲ-ਪਰਪਜ਼ CPU ਤੋਂ ਹਟਾ ਦਿੰਦੇ ਹਨ:
ਕਲਾਉਡ ਓਪਰੇਟਰ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਚਿਪਾਂ ਨੂੰ ਇਸ ਲਈ ਨਹੀਂ ਚੁਣਦੇ ਕਿ ਉਹ "ਸਿਰਫ ਤੇਜ਼" ਹਨ—ਉਹ ਉਹਨਾਂ ਨੂੰ ਚੁਣਦੇ ਹਨ ਜਦੋਂ ਕੰਮ ਵੱਡਾ, ਦੁਹਰਾਏ ਜਾਣ ਵਾਲਾ ਅਤੇ ਸਮਰੱਥਾ-ਅਨੁਕੂਲ ਹੋਵੇ ਕਿ ਉਸਨੂੰ ਡੈਡੀਕੇਟਡ ਹਾਰਡਵੇਅਰ ਬਣਾਇਆ ਜਾਵੇ। ਵਿਸ਼ੇਸ਼ ਸਿਲਿਕਾਨ ਸਭ ਤੋਂ ਜ਼ਿਆਦਾ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ ਪੈਮਾਨੇ 'ਤੇ (ਲੱਖਾਂ ਸਮਾਨ ਬੇਨਤੀਆਂ), ਜਦੋਂ ਪਰਫਾਰਮੈਂਸ ਲੋੜਾਂ ਨਿਰਧਾਰਿਤ ਹਨ, ਅਤੇ ਜਦੋਂ ਛੋਟੇ ਸੁਭਾਵਿਕ ਬਚਤਾਂ ਫਲਿੱਟ 'ਚ ਵੱਡੇ ਬਚਤ ਬਣ ਜਾਂਦੀਆਂ ਹਨ।
ਟੀਮਾਂ ਆਮ ਤੌਰ 'ਤੇ ਆਪਣੀਆਂ ਸਭ ਤੋਂ ਵੱਡੀਆਂ ਰੁਕਾਵਟਾਂ ਨੂੰ ਨਿਰਧਾਰਤ ਫੰਕਸ਼ਨਾਂ ਨਾਲ ਜੋੜਦੀਆਂ ਹਨ: ਨੈਟਵਰਕ ਪਾਥ ਵਿੱਚ ਪੈਕਟ ਪ੍ਰੋਸੈਸਿੰਗ ਅਤੇ ਸੁਰੱਖਿਆ, I/O ਪਾਥ ਵਿੱਚ ਸਟੋਰੇਜ ਟਰਾਂਸਲੇਸ਼ਨ ਅਤੇ ਡੇਟਾ ਰੱਖਿਆ, ਜਾਂ ਐਕਸਲੇਰੇਸ਼ਨ ਬਲਾਕਾਂ ਵਿੱਚ ਕੰਪ੍ਰੈਸ਼ਨ/ਕ੍ਰਿਪਟੋ/AI ਪ੍ਰਿਟਿਮਿਵ। ਇੱਕ ਮੁੱਖ ਸਵਾਲ ਇਹ ਹੈ ਕਿ ਕੀ ਇਹ ਕੰਮ ਓਫਲੋਡ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ ਬਿਨਾਂ ਸੌਫਟਵੇਅਰ ਮਾਡਲ ਖ਼ਰਾਬ ਕੀਤੇ।
ਨਿਰਧਾਰ ਲਈ ਪੁੱਛੋ:
ਬੈਂਚਮਾਰਕਜ਼ ਮਾਇਆ ਰੱਖਦੀਆਂ ਹਨ, ਪਰ ਸਿਰਫ ਜੇ ਉਹ ਪ੍ਰੋਡਕਸ਼ਨ ਵਰਗੇ ਆਮ-ਵਰਕਲੋਡ ਨਾਲ ਮਿਲਦੇ ਹੋਣ: ਅਸਲੀ ਪੈਕਟ ਮਿਕਸ, ਸਚ-ਮੈਗਰ-ਸਟੋਰੇਜ ਕਤਾਰ ਗਹਿਰਾਈਆਂ, ਅਤੇ ਹਕੀਕਤੀ ਟੇਨੈਂਟ ਅਲੱਗਾਵਣ। ਪਾਵਰ ਨੂੰ "ਵੱਟ ਪ੍ਰਤੀ ਕੰਮ" ਦੇ ਤੌਰ 'ਤੇ ਮਾਪਿਆ ਜਾਂਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦੋਂ ਰੈਕ ਪਾਵਰ-ਕੈਪਡ ਹੋਣ।
ਇੰਟੈਗ੍ਰੇਸ਼ਨ ਯਤਨ ਅਕਸਰ ਫੈਸਲਾ ਕਰਨ ਵਾਲੀ ਚੀਜ਼ ਹੁੰਦੀ ਹੈ। ਇੱਕ ਚਿਪ ਜੋ ਪੇਪਰ 'ਤੇ 10% ਵਧੀਆ ਹੈ, ਉਹ ਘਾਟਾ ਵਿੱਚ ਹਾਰ ਸਕਦੀ ਹੈ ਜੇ ਉਹ ਪ੍ਰੋਵਿਜ਼ਨ, ਮੋਨੀਟਰ ਅਤੇ ਪੈਚ ਕਰਨ ਵਿੱਚ ਕਠਨ ਹੋਵੇ।
ਕਲਾਉਡ ਟੀਮਾਂ ਜੋਖਮ ਘਟਾਉਣ ਲਈ ਮਿਆਰਾਂ (Ethernet, NVMe, PCIe/CXL), ਚੰਗੀ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਵਾਲੇ APIs ਅਤੇ ਇੰਟਰਓਪਰੇਬਲ ਮੈਨੇਜਮੈਂਟ ਟੂਲਿੰਗ ਨੂੰ ਤਰਜੀਹ ਦਿੰਦੀਆਂ ਹਨ। ਜਦੋਂ vendor ਵਿਸ਼ੇਸ਼ ਫੀਚਰ ਵਰਤੇ ਜਾਂਦੇ ਹਨ (Marvell ਆਦਿ), ਉਹ ਉੱਪਰੀ-ਸਤ੍ਹੀ ਦੇ ਕੰਟਰੋਲ ਪਲੇਨ ਨੂੰ ਪੋਰਟੇਬਲ ਰੱਖਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹਨ ਤਾਂ ਕਿ ਹਾਰਡਵੇਅਰ ਬਦਲਣ 'ਤੇ ਪੂਰੇ ਪਲੇਟਫ਼ਾਰਮ ਨੂੰ ਨਹੀਂ ਮਰਭਟਣਾ ਪਏ।
ਉਸੇ ਸਿਧਾਂਤ ਨੂੰ ਸੌਫਟਵੇਅਰ ਪਾਸੇ ਵੀ ਲਾਗੂ ਕਰੋ: ਜਦੋਂ ਤੁਸੀਂ ਸੇਵਾਵਾਂ ਬਣਾਉਂਦੇ ਹੋ ਜੋ ਅੰਤ ਵਿੱਚ ਇਸ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ 'ਤੇ ਚੱਲਣਗੀਆਂ, ਤਾਂ ਆਰਕੀਟੈਕਚਰ ਨੂੰ ਪੋਰਟੇਬਲ ਰੱਖਣਾ ਮਦਦਗਾਰ ਹੁੰਦਾ ਹੈ। Platforms like Koder.ai ਕਿਵੇਂ ਤੇਜ਼ ਪੋਟੋਟਾਈਪਿੰਗ ਅਤੇ iteration ਨੂੰ ਸਹਾਇਕ ਕਰ ਸਕਦੇ ਹਨ—ਪਰ ਹਮੇਸ਼ਾ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਸੀਂ ਕੋਡ ਨਿਰਯਾਤ ਅਤੇ ਆਪਣੀ ਕਲਾਉਡ/ਕੰਪਲਾਇੰਸ ਮੰਗਾਂ ਦੇ ਅਨੁਸਾਰ ਡਿਪਲੌਏ ਕਰ ਸਕਦੇ ਹੋ।
ਕਲਾਉਡ ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਸਿਲਿਕਾਨ "ਇਕ ਸੁਧਾਰਕ" ਤੋਂ ਬੇਸਲਾਈਨ ਪਲੰਬਿੰਗ ਵੱਲ ਬਦਲ ਰਿਹਾ ਹੈ। ਜਿਵੇਂ-ਜਿਵੇਂ ਹੋਰ ਸੇਵਾਵਾਂ ਲੇਟੈਂਸੀ-ਸੰਵੇਦਨਸ਼ੀਲ ਹੁੰਦੀਆਂ ਹਨ (AI ਇਨਫਰੈਂਸ, ਰੀਅਲ-ਟਾਈਮ ਐਨਾਲਿਟਿਕਸ, ਸੁਰੱਖਿਆ ਜਾਂਚ), ਨੈਟਵਰਕਿੰਗ, ਸਟੋਰੇਜ ਅਤੇ ਡੇਟਾ ਮੂਵਮੈਂਟ ਨੂੰ ਬਹੁਤ ਹੀ ਕਾਰਗਰ ਢੰਗ ਨਾਲ ਸੰਭਾਲਣ ਵਾਲੇ ਚਿਪਾਂ ਦਾ ਮਹੱਤਵ CPU ਜਿੰਨਾ ਹੀ ਹੋ ਜਾਵੇਗਾ।
ਹੁਣ ਉੱਚ-ਬੈਂਡਵਿਡਥ ਨੈੱਟਵਰਕ ਅਲੱਗ-ਟਾਇਰ ਨਹੀਂ ਰਹੇ—ਉਹ ਉਮੀਦ ਬਣ ਚੁੱਕੇ ਹਨ। ਇਸ ਨਾਲ Ethernet ਸਵਿੱਚਿੰਗ, ਪੈਕਟ ਪ੍ਰੋਸੈਸਿੰਗ, DPUs ਅਤੇ Smart NICs ਤੇਜ਼ ਪੋਰਟਸ, ਘੱਟ ਲੇਟੈਂਸੀ ਅਤੇ ਬਿਹਤਰ ਕਨਜੈਸ਼ਨ ਕੰਟਰੋਲ ਵੱਲ ਵੱਧ ਰਹੇ ਹਨ। Vendors ਜਿਵੇਂ Marvell ਮੁਕਾਬਲਾ ਜਾਰੀ ਰੱਖਣਗੇ ਕਿ ਕਿੰਨਾ ਕੰਮ ਹਾਰਡਵੇਅਰ ਵਿੱਚ ਓਫਲੋਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ (ਇਨਕ੍ਰਿਪਸ਼ਨ, ਟੈਲੀਮੈਟਰੀ, ਵਰਚੁਅਲ ਸਵਿੱਚিং) ਬਿਨਾਂ ਓਪਰੇਸ਼ਨਲ ਜਟਿਲਤਾ ਵਧਾਏ।
PCIe ਅਤੇ CXL ਕਨੈਕਟੀਵਿਟੀ ਵੱਧ ਕੇ disaggregation ਨੂੰ ਯਥਾਰਥ ਬਣਾਉਣਗੇ: ਮੈਮੋਰੀ ਅਤੇ ਐਕਸਲੇਰੇਟਰਾਂ ਨੂੰ ਪੂਲ ਕਰ ਕੇ racks ਨੂੰ ਹਰ ਵਰਕਲੋਡ ਲਈ "ਕੰਪੋਜ਼" ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਸਿਲਿਕਾਨ ਲਈ ਮੌਕਾ صرف CXL PHY ਨਹੀਂ ਹੈ—ਉਹ ਕੰਟਰੋਲਰ, ਸਵਿੱਚਿੰਗ ਅਤੇ ਫਰਮਵੇਅਰ ਵੀ ਹਨ ਜੋ ਪੂਲ ਕੀਤੇ ਸਰੋਤਾਂ ਨੂੰ ਭਰੋਸੇਯੋਗ, ਸੁਰੱਖਿਅਤ ਅਤੇ ਨਿਰੀਖਣਯੋਗ ਬਣਾਉਂਦੇ ਹਨ।
ਵੱਡੇ ਪ੍ਰੋਵਾਈਡਰ ਵਧੇਰੇ ਅੰਤਰ-ਗੁਣ ਅਤੇ ਡਾਟਾ-ਨੈਟਿਵ ਇਕਠੇਕਰਨ ਚਾਹੁੰਦੇ ਹਨ। ਅੱਗੇ ਦੇਖੋ ਕਿ ਹੋਰ ਅਰਧ-ਕਸਟਮ ਪ੍ਰੋਗਰਾਮ ਹੋਣਗੇ ਜਿੱਥੇ ਇੱਕ ਮਿਆਰੀ ਬਿਲਡਿੰਗ ਬਲਾਕ (SerDes, Ethernet switching, NVMe) ਨੂੰ ਪਲੇਟਫਾਰਮ-ਬਿਸ਼ੇਸ਼ ਫੀਚਰ, ਡਿਪਲੌਯਮੈਂਟ ਟੂਲਿੰਗ ਅਤੇ ਲੰਬੇ ਸਮਰਥਨ ਵਿੰਡੋ ਨਾਲ ਜੋੜਿਆ ਜਾਵੇਗਾ।
ਪਰਫਾਰਮੈਂਸ ਪ੍ਰਤੀ ਵੱਟ ਸਿਰਲੇਖ ਸ਼ਬਦ ਹੋਵੇਗਾ, ਖ਼ਾਸ ਕਰਕੇ ਜਦੋਂ ਪਾਵਰ ਕੈਪਸ ਵਧਣ ਰੁਕਾਵਟ ਬਣਦੇ ਹਨ। ਸੁਰੱਖਿਆ ਫੀਚਰ ਡੇਟਾ ਪਾਥ ਦੇ ਨੇੜੇ ਆਉਣਗੇ (ਇਨਲਾਈਨ ਇਨਕ੍ਰਿਪਸ਼ਨ, ਸੁਰੱਖਿਅਤ ਬੂਟ, ਐਟੈਸਟੇਸ਼ਨ)। ਆਖਿਰਕਾਰ, ਅਪਗਰੇਡ ਰਾਸਤੇ ਮਹੱਤਵਪੂਰਨ ਹੋਣਗੇ: ਕੀ ਤੁਸੀਂ ਨਵੀਂ ਬੈਂਡਵਿਡਥ, CXL ਸੰਸ਼ੋਧਨ ਜਾਂ ਓਫਲੋਡ ਫੀਚਰ ਬਿਨਾਂ ਪੂਰੇ ਪਲੇਟਫਾਰਮ ਨੂੰ ਮੁੜ-ਡਿਜ਼ਾਈਨ ਕੀਤੇ ਅਪਨਾਇ ਸਕਦੇ ਹੋ?
Marvell ਮੁੱਖ ਤੌਰ 'ਤੇ ਕਲਾਉਡ ਡੇਟਾ ਸੈਂਟਰਾਂ ਦੇ “ਡਾਟਾ ਪਾਥ” ਸਤਰ ਨੂੰ ਨਿਸ਼ਾਨਾ ਬਣਾਂਦਾ ਹੈ: ਨੈਟਵਰਕਿੰਗ (NICs/DPUs, ਸਵਿੱਚ ਸਿਲਿਕਾਨ), ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ (NVMe ਆਦਿ) ਅਤੇ ਵਿਸ਼ੇਸ਼ ਤੇਜ਼ੀ ਲਈ ਬਲਾਕ (ਕ੍ਰਿਪਟੋ, ਪੈਕਟ ਪ੍ਰੋਸੈਸਿੰਗ, ਕੰਪ੍ਰੈਸ਼ਨ, ਟੈਲੀਮੈਟਰੀ). ਮਕਸਦ ਇਹ ਹੈ ਕਿ ਡਾਟਾ ਨੂੰ ਸਕੇਲ 'ਤੇ ਹਿਲਾਇਆ, ਸੁਰੱਖਿਅਤ ਅਤੇ ਪ੍ਰਬੰਧ ਕੀਤਾ ਜਾਵੇ ਬਿਨਾਂ ਮੁੱਖ CPU ਸਾਈਕਲ ਜ਼ਿਆਦਾ ਖਰਚ ਕੀਤੇ।
ਕਿਉਂਕਿ ਜਨਰਲ-ਪਰਪਜ਼ CPU ਬਹੁਤ ਲਚਕੀਲੇ ਹੁੰਦੇ ਹਨ ਪਰ ਦੁਹਰਾਏ ਜਾਣ ਵਾਲੇ ਤੇ ਬਹੁਤ ਵੱਡੇ ਇन्फ੍ਰਾਸਟ੍ਰਕਚਰ ਕੰਮਾਂ (ਪੈਕਟ ਪ੍ਰੋਸੈਸਿੰਗ, ਇਨਕ੍ਰਿਪਸ਼ਨ, ਸਟੋਰੇਜ ਪ੍ਰੋਟੋਕੋਲ) ਵਿੱਚ ਕਾਰਗਰ ਨਹੀਂ। ਇਹ ਕੰਮ ਡੈਡੀਕੇਟਡ ਸਿਲਿਕਾਨ 'ਤੇ ਓਫਲੋਡ ਕਰਨ ਨਾਲ:
ਇੱਕ Smart NIC ਇੱਕ ਐਸਾ ਨੈਟਵਰਕ ਇੰਟਰਫੇਸ ਕਾਰਡ ਹੈ ਜੋ ਸਿਰਫ ਭੇਜ਼ਣਾ/ਲੈਣਾ ਤੋਂ ਵੱਧ ਕਰਦਾ ਹੈ—ਇਸ 'ਤੇ ਵਾਧੂ ਪ੍ਰੋਸੈਸਿੰਗ ਹੋ ਸਕਦੀ ਹੈ (ਅਕਸਰ Arm ਕੋਰ ਜਾਂ ਪ੍ਰੋਗ੍ਰਾਮੇਬਲ ਲੋਜਿਕ) ਤਾਂ ਜੋ ਨੈਟਵਰਕਿੰਗ ਫੀਚਰ ਕਾਰਡ 'ਤੇ ਹੀ ਦੌੜ ਸਕਣ।
ਇੱਕ DPU (Data Processing Unit) ਇੱਕ ਕਦਮ ਅੱਗੇ ਜਾਂਦਾ ਹੈ: ਇਹ ਸਰਵਰ ਦੇ ਅੰਦਰ ਇੱਕ ਨਿਰਧਾਰਤ “ਇਨਫ੍ਰਾਸਟਰੱਕਚਰ ਕੰਪਿਊਟਰ” ਵਾਂਗ ਕੰਮ ਕਰਨ ਲਈ ਤਿਆਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਆਮ ਤੌਰ 'ਤੇ DPU ਵਿੱਚ ਹਾਈ-ਪਰਫਾਰਮੈਂਸ ਨੈਟਵਰਕਿੰਗ, ਕਈ CPU ਕੋਰ, ਹਾਰਡਵੇਅਰ ਐਕਸਲੇਰੇਟਰ (ਕ੍ਰਿਪਟੋ, ਪੈਕਟ ਪ੍ਰੋਸੈਸਿੰਗ) ਅਤੇ ਮਜ਼ਬੂਤ ਅਲੱਗਾਵਣੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹੁੰਦੀਆਂ ਹਨ ਤਾਂ ਜੋ ਇਹ ਹੋਸਟ CPU 'ਤੇ ਭਰੋਸਾ ਕੀਤੇ ਬਿਨਾਂ ਡਾਟਾ ਮੂਵਮੈਂਟ ਅਤੇ ਸੁਰੱਖਿਆ ਸੰਭਾਲ ਸਕੇ।
ਆਮ ਓਫਲੋਡ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ:
ਇਹ CPU ਓਵਰਹੈੱਡ ਘਟਾਉਂਦੇ ਹਨ ਅਤੇ ਲੋਡ 'ਤੇ ਲੇਟੈਂਸੀ ਸਥਿਰ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦੇ ਹਨ।
ਅਕਸਰ ਟ੍ਰੈਫਿਕ “ਇਸਟ–ਵੈਸਟ” ਹੁੰਦੀ ਹੈ: ਸੇਵਾ-ਤੋਂ-ਸੇਵਾ ਕਾਲਾਂ, ਸਟੋਰੇਜ ਰੀਪਲਿਕੇਸ਼ਨ, ਡੇਟਾਬੇਸ/ਕੈਸ਼ ਟ੍ਰੈਫਿਕ ਅਤੇ ਵਿਤਰਿਤ AI ਵਰਕਲੋਡ। ਇਹ ਅੰਦਰੂਨੀ ਟ੍ਰੈਫਿਕ ਭਰੋਸੇਯੋਗ ਲੇਟੈਂਸੀ ਅਤੇ ਉੱਚ ਥਰਪੁੱਟ ਮੰਗਦੀ ਹੈ, ਜੋ NICs/DPUs ਅਤੇ ਸਵਿੱਚ ਸਿਲਿਕਾਨ 'ਤੇ ਹੋਰ ਪ੍ਰੋਸੈਸਿੰਗ ਵਧਾਉਂਦੀ ਹੈ ਤਾਂ ਜੋ ਸਖਤ ਪੈਮਾਨਿਆਂ 'ਤੇ ਪ੍ਰਦਰਸ਼ਨ ਠੀਕ ਰਹੇ।
ਬਹੁਤ ਵੱਡੇ ਡੇਟਾ ਸੈਂਟਰ ਆਮ ਤੌਰ 'ਤੇ ਲਫ਼/ਸਪਾਈਨ (ToR + spine) ਟੋਪੋਲੋਜੀ ਵਰਤਦੇ ਹਨ:
ਸਵਿੱਚ ਸਿਲਿਕਾਨ ਨੂੰ ਪੈਕਟ ਫਾਰਵਰਡ ਕਰਨ ਦੇ ਨਾਲ-ਨਾਲ ਬਰਸਟ ਨੂੰ ਬਫਰ ਅਤੇ ਕਨਫ਼ਿਗਰ/ਸੈਡਿਊਲ ਕਰਨਾ, QoS ਲਾਗੂ ਕਰਨਾ ਅਤੇ ਟੈਲੀਮੈਟਰੀ ਦੇ ਰਾਹੀਂ ਮੋਨੀਟਰੀੰਗ ਲਈ ਸਹੂਲਤ ਦੇਣੀ ਪੈਂਦੀ ਹੈ—ਉਹ ਵੀ ਲਾਈਨ ਰੇਟ 'ਤੇ।
ਇੱਕ ਸਟੋਰੇਜ ਕੰਟਰੋਲਰ ਫਲੈਸ਼ ਡਿਵਾਇਸਾਂ ਅਤੇ ਸਿਸਟਮ ਦੇ ਬਾਕੀ ਹਿੱਸੇ ਦੇ ਵਿਚਕਾਰ ਖੜਾ ਟ੍ਰੈਫਿਕ ਡਾਇਰੈਕਟਰ ਹੈ। ਇਹ:
ਅਧਿਕਾਰਤ ਕੰਟਰੋਲਰ ਆਮ ਤੌਰ 'ਤੇ ਐਨਕ੍ਰਿਪਸ਼ਨ, ਕੰਪ੍ਰੈਸ਼ਨ ਅਤੇ ਪੈਰਿਟੀ/ਇਰੇਜ਼ਰ ਕੋਡਿੰਗ ਸਹਾਇਤਾ ਜਿਹੇ ਫੀਚਰ ਹਾਰਡਵੇਅਰ ਵਿੱਚ ਰੱਖਦੇ ਹਨ ਤਾਂ ਜੋ ਇਹ ਕੰਮ ਹੋਸਟ CPU ਨੂੰ ਵਿਸ਼ਾਲ ਤੌਰ 'ਤੇ ਨਾਂ ਘੇਰੇ।
NVMe (Non-Volatile Memory Express) ਫਲੈਸ਼ ਲਈ ਬਣਿਆ ਇੱਕ ਪ੍ਰੋਟੋਕੋਲ ਹੈ ਜੋ ਘੱਟ ਓਵਰਹੈੱਡ ਅਤੇ ਬਹੁਤ ਸਾਰੇ ਪੈਰੈਲਲ ਕਤਾਰਾਂ (queues) ਨੂੰ ਸਪੋਰਟ ਕਰਦਾ ਹੈ—ਜਿਸ ਨਾਲ ਇੱਕ ਸਮੇਂ ਵਿੱਚ ਬਹੁਤ ਸਾਰੀਆਂ ਰੀਡ/ਰਾਈਟ ਓਪਰੇਸ਼ਨ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਕਲਾਉਡ ਵਿੱਚ NVMe ਦਾ ਫਾਇਦਾ ਕਿਵੇਂ ਦਿਸਦਾ ਹੈ: ਵਧੀਕ ਪੀਕ ਥਰਪੁੱਟ ਹੀ ਨਹੀਂ, ਸਗੋਂ ਭਰੋਸੇਯੋਗ ਤੌਰ 'ਤੇ ਘੱਟ ਲੇਟੈਂਸੀ ਲੋਡ 'ਤੇ—ਜੋ ਹਜ਼ਾਰਾਂ ਛੋਟੀਆਂ I/O ਨੂੰ ਇੱਕੱਠਾ ਸੰਭਾਲਣ 'ਚ ਜਰੂਰੀ ਹੁੰਦਾ ਹੈ।
PCIe ਸਰਵਰ ਦੇ ਅੰਦਰ NICs, DPUs, SSDs, GPUs ਅਤੇ ਹੋਰ ਐਕਸਲੇਰੇਟਰਾਂ ਨੂੰ ਜੋੜਨ ਲਈ ਮੁੱਖ ਤੇਜ਼ ਇੰਟਰਕਨੈਕਟ ਹੈ। CXL ਉਨ੍ਹਾਂ ਫਿਜ਼ਿਕਲ ਲੇਅਰਾਂ ਨੂੰ ਵਰਤਦਾ ਹੋਇਆ ਮੈਮਰੀ-ਨੂੰ-ਸਾਂਝਾ ਕਰਨ ਦੇ ਨਵੇਂ ਤਰੀਕੇ ਦਿੰਦਾ ਹੈ।
ਅਮਲੀ ਨਤੀਜੇ:
ਟੀਮਾਂ ਆਮ ਤੌਰ 'ਤੇ ਆਪਣੀ ਸਭ ਤੋਂ ਵੱਡੀ ਬੋਤਲ-ਨੈਕ ਨੂੰ ਨਿਰਧਾਰਤ ਫੰਕਸ਼ਨਾਂ ਨਾਲ ਜੋੜਦੀਆਂ ਹਨ: ਨੈਟਵਰਕਿੰਗ ਵਿੱਚ ਪੈਕਟ ਪ੍ਰੋਸੈਸਿੰਗ ਅਤੇ ਸੁਰੱਖਿਆ, I/O ਪਾਥ ਵਿੱਚ ਸਟੋਰੇਜ 트랜ਸਲੇਸ਼ਨ ਅਤੇ ਡੇਟਾ ਪ੍ਰੋਟੈਕਸ਼ਨ, ਜਾਂ ਐਕਸਲੇਰੇਸ਼ਨ ਬਲਾਕਾਂ ਵਿੱਚ ਕੰਪ੍ਰੈਸ਼ਨ/ਕ੍ਰਿਪਟੋ। ਮੁੱਖ ਸਵਾਲ ਇਹ ਹੁੰਦਾ ਹੈ ਕਿ ਕੀ ਇਹ ਕੰਮ ਓਫਲੋਡ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ ਬਿਨਾਂ ਸੌਫਟਵੇਅਰ ਮਾਡਲ ਤੋੜਣ ਦੇ।
ਵਿਕਰੇਤਿਆਂ ਨੂੰ ਪੁੱਛਣ ਲਈ:
ਬੈਂਚਮਾਰਕਸ ਉਦਯੋਗਕ ਵਰਕਲੋਡ ਨਾਲ ਮਿਲਦੇ ਹੋਏ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ, ਅਤੇ ਇੰਟੈਗ੍ਰੇਸ਼ਨ ਖਰਚ ਅਕਸਰ ਫੈਸਲਾ ਕਰਨ ਵਾਲੀ ਚੀਜ਼ ਹੁੰਦੀ ਹੈ।