Rust рдФрд░ LLVM рдХреЗ рд╕рд╛рде 100 рдмрд╛рд░ рд╕реБрдкреА, рд╕реНрдХрд┐рдХрд┐рдЯ рдФрд░ рдкрд╛рдВрдбрд╛ рдХреЛ рдЧрддрд┐ рджреЗрдВ: рдбреЗрд╡рд▓рдкрд░ рд╡реЗрд▓реНрдб рдХреЗ рд╕рд╛рде рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░

рд╣реЗрд▓реЛ, рд╣реЗрдмреНрд░! рдореИрдВ рдЖрдкрдХреЛ "рд╡реЗрд▓реНрдб рдХреЗ рдореБрдЦреНрдп рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░: рд╕реНрддрдмреНрдз, рдбрд░рд╛рд╡рдирд╛ рдФрд░ рдкрд╛рдВрдбрд╛ рдХреЗ рд░реВрдк рдореЗрдВ 100x рдХреЗ рд░реВрдк рдореЗрдВ рдЬрдВрдЧ рдФрд░ рдПрд▓рдПрд▓рд╡реАрдПрдо рдХреЗ рд╕рд╛рде рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░" рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдкреЗрд╢ рдХрд░рддрд╛ рд╣реВрдВ ред

рдкрд╛рдпрдерди рдФрд░ рдЖрд░ рдореЗрдВ рдбреЗрдЯрд╛ рд╡рд┐рдЬреНрдЮрд╛рди рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрдИ рд╣рдлреНрддреЛрдВ рддрдХ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдХреНрдпрд╛ CUDA рдХреА рддрд░рд╣ рдХреЛрдИ рдордзреНрдпрд╡рд░реНрддреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ (IR) рд╣реИ рдЬрд┐рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдореЗрдВ рд╕рдорд╛рди рддрд░реАрдХреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдФрд░ рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдмреЗрд╣рддрд░ рдХреБрдЫ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрдЬрд╛рдп рдкреВрд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд░рдирдЯрд╛рдЗрдо рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

рдХрдИ рджрд┐рдиреЛрдВ рддрдХ рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рд╢реЛрдз рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рд╡реЗрд▓реНрдб рдорд┐рд▓рд╛(рдЖрдк рдЕрдХрд╛рджрдорд┐рдХ рд▓реЗрдЦ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ )ред

рдореЗрд░реЗ рдЖрд╢реНрдЪрд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЗрдЦрдХ рд╡реЗрд▓реНрдб рдореЗрдВ рд╕реЗ рдПрдХ рдорддреЗрдИ рдЬрд╝рд╣рд░рд┐рдпрд╛ (рдордЯреЗрдИ рдЬрд╝рд╣рд░рд┐рдпрд╛) рд╣реИрдВ, рдЬреЛ рд╕реНрдкрд╛рд░реНрдХ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рд╣реИрдВред

рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рд╢реМрдорд┐рдХ рдкрд╛рд▓рдХрд░ , рд╡реЗрд▓реНрдб рдХреЗ рдореБрдЦреНрдп рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд┐рдпрд╛ , рдФрд░ рдЙрдирдХрд╛ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рд▓рд┐рдпрд╛ред рд╢реЛрдорд┐рдХ рд╕реНрдЯреИрдирдлреЛрд░реНрдб рд╡рд┐рд╢реНрд╡рд╡рд┐рджреНрдпрд╛рд▓рдп рдореЗрдВ рдХрдВрдкреНрдпреВрдЯрд░ рд╡рд┐рдЬреНрдЮрд╛рди рд╡рд┐рднрд╛рдЧ рдореЗрдВ рдПрдХ рд╕реНрдирд╛рддрдХ рдЫрд╛рддреНрд░ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рдореИрддреЗ рдЬрд╝рдЦрд╛рд░рд┐рдпрд╛ рдХреА рд╕рд▓рд╛рд╣ рдкрд░ рдкреНрд░рд╡реЗрд╢ рдХрд┐рдпрд╛ред

рд╡реЗрд▓реНрдб рдЕрднреА рддрдХ рдФрджреНрдпреЛрдЧрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдЖрд╢рд╛рдЬрдирдХ рд╣реИред рдпрджрд┐ рдЖрдк рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛ рд╡рд┐рдЬреНрдЮрд╛рди рдФрд░ рдЬрдВрдЧ рдХреЗ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рдкрд╕рдВрдж рдЖрдПрдЧрд╛ред

рдореВрд▓ рд▓реЗрдЦ рдХреЗ рд▓реЗрдЦрдХ рдХрд╛ рд╡рд┐рдЬреНрдЮрд╛рдкрди
image
┬лNot a Monad Tutorial┬╗, Weld . !

, mail@fcarrone.com @unbalancedparen.

рд╡реЗрд▓реНрдб рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдбрд┐рдЬрд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╣ рдХрд┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ?


рд╡реЗрд▓реНрдб рдХрд╛ рд▓рдХреНрд╖реНрдп рдЙрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝рд╛рдирд╛ рд╣реИ рдЬреЛ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп APIs рдЬреИрд╕реЗ рдХрд┐ NumPy рдФрд░ Pandas рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдЬреЛ рд╡рд╣ рд╣рд▓ рдХрд░рддреА рд╣реИ рд╡рд╣ рд╣реИ рдХреНрд░реЙрд╕-рдлрд╝рдВрдХреНрд╢рдирд▓ рдФрд░ рдХреНрд░реЙрд╕-рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдЬреЛ рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЖрдЬ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдХрдИ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдЖрдзреБрдирд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реА рджреНрд╡рд╛рд░рд╛ рдкрдВрдбреЛрдВ рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рддреЗрдЬ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо, рдпрд╛ рдиреНрдпреВрдордкреА рдореЗрдВ рддреНрд╡рд░рд┐рдд рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрди), рд▓реЗрдХрд┐рди рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рдмрд╛рдж рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрди рдХрд░рддреЗ рд╕рдордп рдЕрдирд╛рд╡рд╢реНрдпрдХ рдореЗрдореЛрд░реА рд╕реНрдХреИрди рдХреЛ рд░реЛрдХрдирд╛ред

рд╡реЗрд▓реНрдб рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд░рдирдЯрд╛рдЗрдо рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдордзреНрдпрд╡рд░реНрддреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ (IR) рдореЗрдВ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рди рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ IR рддрдм рдХрдВрдкрд╛рдЗрд▓рд░ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдлреНрд▓рд╛рдИ (JIT) рдкрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдорд╢реАрди рдХреЛрдб рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рд▓реВрдк рд╡рд┐рд▓рдп, рд╡реЗрдХреНрдЯрд░рд╛рдЗрдЬрд╝реЗрд╢рди рдЖрджрд┐ред рд╡реЗрд▓реНрдб рдХрд╛ рдЖрдИрдЖрд░ рд╢реБрд░реВ рдореЗрдВ рд╕рдорд╛рдирд╛рдВрддрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣рдореЗрд╢рд╛ рддреБрдЪреНрдЫ рд░реВрдк рд╕реЗ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрдкреНрд▓рд┐рдЯ рдПрдиреЛрдЯреЗрд╢рди рдирд╛рдордХ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рднреА рд╣реИ, рдЬрд┐рд╕реЗ рд╡реЗрд▓реНрдб рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдореМрдЬреВрджрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреА рдмрд╛рдзрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдХреНрдпрд╛ рд╕реБрдиреНрди, рдкрдВрдбреЛрдВ рдФрд░ рд╕реНрдХрд┐рдХрд┐рдЯ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛? рдХрд┐рддрдирд╛ рддреЗрдЬ рд╣реИ?


рд╡реЗрд▓реНрдб рдЗрди рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХреЗрд╡рд▓ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд╛рд░реНрдпреЛрдВ рдХреА рдХреЙрд▓ рдХреЛ рддреЗрдЬ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрдирдореЗрдВ рд╕реЗ рдХрдИ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдзреБрдирд┐рдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕реАрдорд╛рдУрдВ рдХреЗ рдиреАрдЪреЗ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕рдорд╛рдирддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рд╕реНрдореГрддрд┐ рдкрджрд╛рдиреБрдХреНрд░рдо рдХрд╛ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди-рд╕реНрддрд░реАрдп C рднрд╛рд╖рд╛ рдореЗрдВ рдмрд╣реБрдЖрдпрд╛рдореА рд╕рд░рдгрд┐рдпреЛрдВ (ndarray) рдХреЗ рд▓рд┐рдП рдХрдИ NumPy рдлрд╝рдВрдХреНрд╢рдВрд╕ рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХреЗ рд▓рд┐рдП рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреА рдкреВрд░реА рд╕реНрдХреИрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрджрд┐ рдпреЗ рд╕рд░рдгрд┐рдпрд╛рдБ рд╕реАрдкреАрдпреВ рдХреИрд╢ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВ, рддреЛ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рдХреЛ рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдореБрдЦреНрдп рдореЗрдореЛрд░реА рд╕реЗ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡реЗрд▓реНрдб рд╡реНрдпрдХреНрддрд┐рдЧрдд рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЕрдиреБрдХреВрд▓рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд▓реВрдк рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рдЬреЛ рдХреИрд╢ рдпрд╛ рд╕реАрдкреАрдпреВ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдЧрд╛ред рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдорд▓реНрдЯреА рдХреЛрд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдкрд░рд┐рдорд╛рдг рдХреЗ рдПрдХ рдЖрджреЗрд╢ рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдмреЗрд╣рддрд░ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред

рдЫрд╡рд┐

рд╕реНрдкрд╛рд░реНрдХ (рд╢реАрд░реНрд╖ рдмрд╛рдПрдВ), рдиреНрдпреВрдордкреА (рд╢реАрд░реНрд╖ рджрд╛рдПрдВ) рдФрд░ рдЯреЗрдиреНрд╕рд░рдлреНрд▓реЛ (рдиреАрдЪреЗ рдмрд╛рдПрдВ) рдХреЗ рд╕рд╛рде рд╡реЗрд▓реНрдб рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЗ рдПрдХреАрдХрд░рдг рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд┐рдирд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ 30 рдЧреБрдирд╛ рд╕реБрдзрд╛рд░ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред рдкрдВрдбреЛрдВ рдФрд░ NumPy рдХреЗ рдХреНрд░реЙрд╕-рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди (рдиреАрдЪреЗ рджрд╛рдПрдВ) рдкрд░рд┐рдорд╛рдг рдХреЗ рджреЛ рдЖрджреЗрд╢реЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдмрд╛рд▓реВ рдХреНрдпрд╛ рд╣реИ?


рдмрд╛рд▓реВ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдЬреЛ рд╡реЗрд▓реНрдб рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдкрдВрдбрд╛рд╕ рдПрдкреАрдЖрдИ рдХреЗ рд╕рдмрд╕реЗрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд░рд╛рдбреБ рдЬреАрдХрд╛, рд╕реАрдбрдмреНрд▓реНрдпреВрдЖрдИ (рд╕реЗрдВрдЯреНрд░рдо рд╡рд┐рд╕реНрдХрдВрдбреЗ рдПрдВрдб рдЗрдВрдлреЙрд░реНрдореЗрдЯрд╛, рдПрдореНрд╕реНрдЯрд░реНрдбрдо) рдореЗрдВ рдПрдХ рдорд╛рд╕реНрдЯрд░ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдмрд╛рд▓реВ рдХрд╛ рд▓рдХреНрд╖реНрдп рдкрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд░реЛрдХреНрдд рдЕрдиреБрдХреВрд▓рди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛, рд╕реНрдореГрддрд┐ рдЙрдкрдпреЛрдЧ рдХреЛ рдХрдо рдХрд░рдирд╛ рдФрд░ рд╕рдВрдЧрд╛рдордирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рд╣реИред

рдХреНрдпрд╛ рд╡реЗрд▓реНрдб / рдмрд╛рд▓реВ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣реНрдп рд╕рдВрдЪрд╛рд▓рди (рдЬреИрд╕реЗ, рдХрд╣рддреЗ рд╣реИрдВ, Dask) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╕реНрдореГрддрд┐ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ?


рд╡реЗрд▓реНрдб рдФрд░ рдмрд╛рд▓реВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдмрд╛рд╣рд░реА рд╕рдВрдЪрд╛рд▓рди (рдЖрдЙрдЯ-рдСрдл-рдХреЛрд░, рдмрд╛рд╣рд░реА рдореЗрдореЛрд░реА) рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдУрдкрдирд╕реЛрд░реНрд╕-рд╡рд┐рдХрд╛рд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдкреНрд░рд╕рдиреНрди рд╣реЛрдВрдЧреЗ!

рд╡реЗрд▓реНрдб рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдиреЗ рд░реБрд╕реНрдЯ рдФрд░ рдПрд▓рдПрд▓рд╡реАрдПрдо рдХреЛ рдХреНрдпреЛрдВ рдЪреБрдирд╛? рдХреНрдпрд╛ рдЖрдк рддреБрд░рдВрдд рд░реБрд╕реНрддрдо рдореЗрдВ рдЖрдП?


рд╣рдордиреЗ рдЬрдВрдЧ рдХреЛ рдЪреБрдирд╛ рдХреНрдпреЛрдВрдХрд┐:

  • рдЗрд╕рдХрд╛ рдиреНрдпреВрдирддрдо рд░рдирдЯрд╛рдЗрдо рд╣реИ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдХреЗрд╡рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХреА рд╕реАрдорд╛рдУрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ) рдФрд░ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдЬреИрд╕реЗ рдЬрд╛рд╡рд╛ рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ
  • рдЗрд╕рдореЗрдВ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рддрд┐рдорд╛рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди, рдЬреЛ рд▓реЗрдЦрди рдХреЛрдб рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рд╕рдВрдпреЛрдЬрдХ рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
  • ( Rust crates), .

рд╣рдордиреЗ рдПрд▓рдПрд▓рд╡реАрдПрдо рдХреЛ рдЪреБрдирд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдВрдХрд▓рди рдврд╛рдВрдЪрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдФрд░ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо C / C ++ рдХреЗ рдмрдЬрд╛рдп рд╕реАрдзреЗ LLVM рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ C рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕рдВрдХрд▓рди рд╕рдордп рдХреЛ рднреА рдХрдо рдХрд░ рджреЗрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо C / C ++ рдХреЛрдб рдХреЛ рдкрд╛рд░реНрд╕ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рд░рд╕реНрдЯ рдкрд╣рд▓реА рднрд╛рд╖рд╛ рдирд╣реАрдВ рдереА рдЬрд┐рд╕рдореЗрдВ рд╡реЗрд▓реНрдб рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдкрд╣рд▓рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реНрдХрд╛рд▓рд╛ рдкрд░ рдерд╛, рдЬрд┐рд╕реЗ рдЗрд╕рдХреЗ рдмреАрдЬреАрдп рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдФрд░ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдХрд╛рд░рдг рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕рдиреЗ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдХреЗ рд▓реЗрдЦрди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдпрд╛, рдЬреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛ рдореБрдЦреНрдп рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рд╣рдорд╛рд░рд╛ рдореВрд▓ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдЙрддреНрдкреНрд░реЗрд░рдХ рдХреА рддрд░рд╣ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╕реНрдкрд╛рд░реНрдХ рдПрд╕рдХреНрдпреВрдПрд▓ рдореЗрдВ рдПрдХ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ред

рд╣рдо рд╕реНрдХрд╛рд▓рд╛ рд╕реЗ рджреВрд░ рдЪрд▓реЗ рдЧрдП рдХреНрдпреЛрдВрдХрд┐ рдЬреЗрд╡реАрдПрдо-рдЖрдзрд╛рд░рд┐рдд рднрд╛рд╖рд╛ рдХреЛ рдЕрдиреНрдп рд░рдирдЯрд╛рдЗрдо рдФрд░ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рдерд╛ред

Weld CPU GPU, RAPIDS, data science Python GPU?


рд╡реЗрд▓реНрдб рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдЬреИрд╕реЗ RAPIDS рдХреЗ рдмреАрдЪ рдореБрдЦреНрдп рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╡рд┐рднрд┐рдиреНрди рдХрд░реНрдирд▓реНрд╕ (CUDA рд╢рдмреНрджреЛрдВ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди) рдХреЛ рдордХреНрдЦреА рдкрд░ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХрд░рдирд╛ рд╣реИ, рди рдХрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░рдирд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реЗрд▓реНрдб рдЬреАрдкреАрдпреВ рдмреИрдХрдПрдВрдб рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд░реНрдиреЗрд▓ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдПрдХ рдПрдХрд▓ CUDA рдХрд░реНрдиреЗрд▓ рдХреЛ рдЕрдВрддрд┐рдо рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдЧрд╛ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡реЗрд▓реНрдб рдЖрдИрдЖрд░ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИ, рдЬреЛ рдЗрд╕реЗ GPU рдФрд░ CPU рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд╡реЗрдХреНрдЯрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЬреИрд╕реЗ рдЧреИрд░-рдорд╛рдирдХ рдЙрдкрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдмреЗрд╢рдХ, рд╡реЗрд▓реНрдб рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ RAPIDS рд╕рд╣рд┐рдд рдЙрд╕реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдЪреНрдЫреЗрджрди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЙрдирдХреЗ рдкреНрд░рднрд╛рд╡ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Bohrium (NumPy рдореЗрдВ рдЖрд▓рд╕реА рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ) рдФрд░ Numba (рдкрд╛рдпрдерди рд▓рд╛рдЗрдмреНрд░реЗрд░реА, JIT рдХреЛрдб рдХрдВрдкрд╛рдЗрд▓рд░) рдЬреИрд╕реЗ рд░рдирдЯрд╛рдЗрдо рд╡рд╛рддрд╛рд╡рд░рдг Weld рдХреЗ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рд╕реНрдкрд╛рд░реНрдХ рдПрд╕рдХреНрдпреВрдПрд▓ рдЬреИрд╕реЗ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рд╕рд┐рд╕реНрдЯрдо рд╕реАрдзреЗ рд╡реЗрд▓реНрдб рдбрд┐рдЬрд╛рдЗрди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдХреНрдпрд╛ Weld рдХреЗ рдкрд╛рд╕ рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧ рд╣реИрдВ?


рд╡реЗрд▓реНрдб рдЖрдИрдЖрд░ рдХрд╛ рд╕рдмрд╕реЗ рд░реЛрдорд╛рдВрдЪрдХ рдкрд╣рд▓реБрдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛ рд╕рдВрдЧрдгрдирд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗрд▓реНрдб рдЖрдИрдЖрд░ рдореЗрдВ рд▓реВрдк рд╕рдорд╛рдирд╛рдВрддрд░реАрдХрд░рдг рд╣рдореЗрд╢рд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред рдпрд╣ рдирдП рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╡реЗрд▓реНрдб рдЖрдИрдЖрд░ рдХреЛ рдЖрдХрд░реНрд╖рдХ рдмрдирд╛рддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, NEC рдХреЗ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдиреЗ рдХрд╕реНрдЯрдо рд╣рд╛рдИ-рдмреИрдВрдбрд╡рд┐рдбреНрде рд╡реЗрдХреНрдЯрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рдкрд╛рдпрдерди рд╡рд░реНрдХрд▓реЛрдб рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдмрд╕ рдореМрдЬреВрджрд╛ рд╡реЗрд▓реНрдб рдЖрдИрдЖрд░ рдореЗрдВ рдПрдХ рдирдпрд╛ рдмреИрдХрдПрдВрдб рдЬреЛрдбрд╝ рджрд┐рдпрд╛ред

IR рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рднреМрддрд┐рдХ рд╕рдВрдЪрд╛рд▓рди рдХреА рдПрдХ рдкрд░рдд рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рд╣рдо рдЙрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдореЗрдВ рдкрд╛рдпрд▓ рдХреЛрдб рдореЗрдВ рдкрд╛рдпрдерди рдХреЗ рд╕рдмрд╕реЗрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рднреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

рдХреНрдпрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ? рдФрд░ рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЖрдк рдПрдХ рд╕рдорд╛рдкреНрдд рдкрд░рд┐рдгрд╛рдо рдХреА рдЙрдореНрдореАрдж рдХрдм рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?


рдХрдИ рдЙрджрд╛рд╣рд░рдг рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдЬрд┐рди рдкрд░ рд╣рдордиреЗ рдЗрди рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛, рдЙрдиреНрд╣реЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрднрд╛рд░ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЙрдирдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рдФрд░ рдЕрдкрдиреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗред рдФрд░, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛, рдЙрдиреНрд╣реЛрдВрдиреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреИрдЪ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛ред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЗрд╕ рд╕рдордп рдпрд╣ рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╕рдм рдХреБрдЫ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рдЕрдЧрд▓реЗ рдХреБрдЫ рдорд╣реАрдиреЛрдВ рдореЗрдВ рд╣рдорд╛рд░реА рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬрд╝реЗрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд╛рдпрдерди рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реЛрдВрдЧреАред рд╣рдорд╛рд░рд╛ рд▓рдХреНрд╖реНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдмрдирд╛рдирд╛ рд╣реИред рдФрд░ рдЙрди рдЬрдЧрд╣реЛрдВ рдкрд░ рдЧреИрд░-рд╡реЗрд▓реНрдб рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рднреА рд╣реИ рдЬрд╣рд╛рдВ рд╕рдорд░реНрдерди рдЕрднреА рддрдХ рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдкреНрд░рд╢реНрди рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, рд╕реНрдкреНрд▓рд┐рдЯ рдПрдиреЛрдЯреЗрд╢рди рдкреНрд░реЛрдЬреЗрдХреНрдЯ ( рд╕реНрд░реЛрдд рдХреЛрдб рдФрд░ рдЕрдХрд╛рджрдорд┐рдХ рд▓реЗрдЦ ) рдХреЛ рдЗрд╕ рд╕рдВрдХреНрд░рдордг рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕реНрдкреНрд▓рд┐рдЯ рдПрдиреЛрдЯреЗрд╢рди рдПрдХ рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдореМрдЬреВрджрд╛ рдХреЛрдб рдореЗрдВ рдПрдиреЛрдЯреЗрд╢рди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд, рдмрджрд▓рдирд╛ рдФрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рдирд╛ рд╣реИред рдпрд╣ рдЕрдиреБрдХреВрд▓рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рд╡реЗрд▓реНрдб (рд╕рдВрдкреВрд░реНрдг рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреЗ рдмреАрдЪ рд╕реАрдкреАрдпреВ рдХреИрд╢ рдореЗрдВ рдбреЗрдЯрд╛ рдЪрдВрдХреНрд╕ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛) рдореЗрдВ рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА рдорд╛рдирддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╕реНрдкреНрд▓рд┐рдЯ рдПрдиреЛрдЯреЗрд╢рди рд╡реЗрд▓реНрдб рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЖрдИрдЖрд░ рдХрдВрдкрд╛рдЗрд▓рд░ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдореМрдЬреВрджрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд░рдЦрд░рдЦрд╛рд╡ рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреА рд╕реБрд╡рд┐рдзрд╛ рднреА рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддрд╛ рд╣реИред

рд╡реЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдЕрднреА рддрдХ рдкреВрд░реНрдг рд╡реЗрд▓реНрдб рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ, рд╕реНрдкреНрд▓рд┐рдЯ рдПрдиреЛрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╣рдореЗрдВ рдирдП рдЕрдиреБрдХреВрд▓рди рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реБрдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдзреАрд░реЗ-рдзреАрд░реЗ рд╡реЗрд▓реНрдб рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

All Articles