
рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП, рдИрд╢реНрд╡рд░ рдХреЗ рдЬреАрд╡реЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрдбрд╝реЛрд╕реА рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╣реА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдЧреБрдг рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░,
рд╕реНрд░реЛрдд рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕рдХрд╛ рдХрд░реНрдо рдкрд░ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдорд╛рдЗрдХреНрд░реЛрдкреНрд░реЛрд╕реЗрд╕рд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЯреНрд╕ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ
рджреБрдирд┐рдпрд╛ рдореЗрдВ, рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣рдореЗрд╢рд╛ рдЕрдЪреНрдЫреЗ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рдпрд╣ рдереНрд░реЗрдбреНрд╕ рдХреЗ рдмреАрдЪ рдореЗрдореЛрд░реА рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИред
рд╣рдо рд╕рднреА рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ "рдереЛрдбрд╝рд╛ рдкрдврд╝рддреЗ рд╣реИрдВ", рдФрд░ рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕реНрдердЧрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рддрдм рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдЬрдм "рдХреИрд╢ рдЧрд░реНрдо рд░рд╣рддрд╛ рд╣реИ", рдпрд╛рдиреА, рдЬреЛ рдбреЗрдЯрд╛ рдЕрдХреНрд╕рд░ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ рд╡рд╣ рдХреЙрдореНрдкреИрдХреНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ рдХреЗ рдирд┐рдХрдЯрддрдо рдХреИрд╢ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдм рдХреБрдЫ рдРрд╕рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдкрд╣реБрдВрдЪ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ, рддреЛ рдзрд╛рдЧреЗ рд╕рдмрд╕реЗ рдмреБрд░реЗ рджреБрд╢реНрдорди рдмрди рдЬрд╛рддреЗ рд╣реИрдВ [рдЙрддреНрдкрд╛рджрдХрддрд╛], рдФрд░ рдХреИрд╢ рдЧрд░реНрдо рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА "
рдирд╛рд░рдХреАрдп рдЖрдЧ рд╕реЗ рдЬрд▓ рд░рд╣рд╛ рд╣реИ " - рдРрд╕рд╛ рд╕рдВрдШрд░реНрд╖ рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рд╕рд╛рдордиреЗ рд╣реИред
рдиреАрдЪреЗ рд╣рдо рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдПрдХ рд╕рд░рд▓ рд▓реЗрдХрд┐рди рд╕рд╛рдВрдХреЗрддрд┐рдХ рдорд╛рдорд▓реЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдлрд┐рд░ рдореИрдВ рдереНрд░реЗрдб рдХреЗ рдмреАрдЪ рдХреИрд╢ рдХреЗ рдЕрд▓рдЧ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рджрдХреНрд╖рддрд╛ рдХреЗ рдиреБрдХрд╕рд╛рди рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рджреВрдВрдЧрд╛ред
рдЗрдВрдЯреЗрд▓ 64 рдФрд░ IA-32 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдореИрдиреБрдЕрд▓ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдПрдХ рдорд╛рдорд▓реЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдорд▓реНрдЯреАрдереНрд░реЗрдбреЗрдб рдореЛрдб рдореЗрдВ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдХреМрди рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЕрдХреНрд╕рд░ рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВред рд╡реЗ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рд╕реНрдерд┐рдд рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдбреЗрдЯрд╛ рддрдХ рдкреНрд░рд╡рд╛рд╣ рдХреЗ (рд╕рдВрд╢реЛрдзрди рдХреЗ рд╕рд╛рде) рдПрдХ рдХреИрд╢ рд▓рд╛рдЗрди (64 рдмрд╛рдЗрдЯреНрд╕) рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рдмрд░рд╛рдмрд░ рдмреНрд▓реЙрдХ рдореЗрдВ рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕реЗ
рдХреИрд╢ рд▓рд╛рдЗрди рд╢реЗрдпрд░рд┐рдВрдЧ рдХрд╣рддреЗ рд╣реИрдВ ред рджреЛ рдкреНрд░рдХрд╛рд░ рдХреА рдХреИрд╢ рд▓рд╛рдЗрди
рд╕рд╛рдЭрд╛рдХрд░рдг рд╣реИрдВ :
рд╕рдЪреНрдЪреА рд╕рд╛рдЭрд╛рдХрд░рдг рдФрд░
рдЭреВрдареА рд╕рд╛рдЭрд╛рдХрд░рдг ред
рд╕рдЪреНрдЪрд╛ рд╕рд╛рдЭрд╛рдХрд░рдг рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдереНрд░реЗрдбреНрд╕ рдореЗрдВ рд╕рдорд╛рди рдореЗрдореЛрд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рддрдХ рдкрд╣реБрдВрдЪ рд╣реЛрддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд╛рдЭрд╛ рдЪрд░ рдпрд╛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдЖрджрд┐рдоред
рдЭреВрдареА рд╕рд╛рдЭрд╛рдХрд░рдг (
рдмреБрд░рд╛рдИ рд╕реЗ рдПрдХ ) - рдпрд╣ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ, рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдПрдХ рд╣реА рдХреИрд╢ рд▓рд╛рдЗрди рдореЗрдВ рдкрдХрдбрд╝рд╛ рдЧрдпрд╛ред рддреБрд░рдВрдд, рд╣рдо рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рджреЛрдиреЛрдВ рдорд╛рдорд▓реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреИрд╢ рдХреЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдХрд╛рд░рдг рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдиреБрдХрд╕рд╛рди рдкрд╣реБрдВрдЪрд╛рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдкрд╣рд▓рд╛ рдорд╛рдорд▓рд╛ рдЕрдХреНрд╕рд░ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рд╣реИ, рддреЛ рджреВрд╕рд░рд╛ рдФрд░ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдкреНрд░рджрд░реНрд╢рди рдХреНрдпреЛрдВ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдЖрдЗрдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рд╕рдордЭрд╛рддреЗ рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдо рдорд▓реНрдЯреАрдереНрд░реЗрдбреЗрдб рдореЛрдб рдореЗрдВ рдХрддрд╛рд░рдмрджреНрдз рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╕рдХреНрд░рд┐рдп рдзрд╛рдЧреЗ, рдПрдХ-рдПрдХ рдХрд░рдХреЗ, рдХрддрд╛рд░ рд╕реЗ рдЕрдЧрд▓реА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ рдЗрд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реНрддрд░ рдкрд░ рдХреНрдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЖрдХрд╛рд░ рдЫреЛрдЯрд╛ рд╣реИ рдФрд░ рдХрдИ рджрд╕рд┐рдпреЛрдВ рдмрд╛рдЗрдЯреНрд╕ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИ?
рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рд╢рд░реНрддреЗрдВ:
рджреЛ рдпрд╛ рдЕрдзрд┐рдХ рдзрд╛рдЧреЗ рдПрдХ рд╣реА рдХреИрд╢ рд▓рд╛рдЗрди рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ;
рдПрдХ рдзрд╛рдЧрд╛ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдмрд╛рдХреА рдХреИрд╢ рд▓рд╛рдЗрди рд╕реЗ рдкрдврд╝рддреЗ рд╣реИрдВ;
рдПрдХ рдзрд╛рдЧрд╛ рд▓рд┐рдЦрддрд╛ рд╣реИ, рд╢реЗрд╖ рдХреЛрд░ рдореЗрдВ, рдПрдЪрдбрдмреНрд▓реНрдпреВ рдкреНрд░реАрдлрд╝реЗрдЪрд░ рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ред
рдпрд╣ рдкрддрд╛ рдЪрд▓ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЪрд░ рд╕реНрдореГрддрд┐ рдореЗрдВ рдЗрддрдиреЗ рд╕реНрдерд┐рдд рд╣реИрдВ рдХрд┐, рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдПрд▓ 1 рдХреИрд╢ рдореЗрдВ рдкрдврд╝рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рд╡реЗ рдПрдХ рд╣реА рдХреИрд╢ рд▓рд╛рдЗрди рдореЗрдВ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рд╣реИред рдЗрд╕реА рд╕рдордп, рдпрджрд┐ рдереНрд░реЗрдбреНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдЗрд╕рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХреИрд╢ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреВрд░реА рдХреИрд╢ рд▓рд╛рдЗрди, рд╢реЗрд╖ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ рдХреЗ рд▓рд┐рдП рдЕрдорд╛рдиреНрдп рдШреЛрд╖рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рдПрдХ рдФрд░ рдзрд╛рдЧрд╛ рдЕрдм рдЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ рдХреЛрд░ рдХреЗ рдПрд▓ 1 рдХреИрд╢ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИред P4 рдЬреИрд╕реЗ рдкреБрд░рд╛рдиреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ, рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдореБрдЦреНрдп рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рд▓рдВрдмреЗ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЕрд░реНрдерд╛рдд рд╕рдВрд╢реЛрдзрд┐рдд рдбреЗрдЯрд╛ рдХреЛ рдореБрдЦреНрдп рдореЗрдореЛрд░реА рдореЗрдВ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдлрд┐рд░ рджреВрд╕рд░реЗ рдХреЛрд░ рдХреЗ L1 рдХреИрд╢ рдореЗрдВ рдкрдврд╝рд╛ рдЬрд╛рдПрдЧрд╛ред рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреА рд╡рд░реНрддрдорд╛рди рдкреАрдврд╝реА (рдХреЛрдбреЗрди рд╕реИрдВрдбреА рдмреНрд░рд┐рдЬ) рдореЗрдВ, рддреБрд▓реНрдпрдХрд╛рд▓рди рддрдВрддреНрд░ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рддреГрддреАрдп-рд╕реНрддрд░реАрдп рдХреИрд╢ (рдпрд╛ LLC - рдЕрдВрддрд┐рдо рд╕реНрддрд░ рдХреИрд╢) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХреИрд╢ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд╕рдорд╛рд╡реЗрд╢реА рд╣реИ рдФрд░ рдЬрд┐рд╕рдореЗрдВ L2 рдФрд░ L1 рджреЛрдиреЛрдВ рдореЗрдВ рд╕реНрдерд┐рдд рд╕рднреА рдбреЗрдЯрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рд╕рднреА рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдореБрдЦреНрдп рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрд▓рдПрд▓рд╕реА рдХреЗ рд╕рд╛рде, рдЬреЛ рдХреИрд╢ рд╕реБрд╕рдВрдЧрддрддрд╛ рддрдВрддреНрд░ рдХреЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдЬреЛ рдмрд╣реБрдд рддреЗрдЬ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕рд┐рд░реНрдл рдХреБрдЫ рджрд░реНрдЬрди рдкреНрд░реЛрд╕реЗрд╕рд░ рдЪрдХреНрд░реЛрдВ рдореЗрдВ рдорд╛рдкрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдХреИрд╢ рд▓рд╛рдЗрди рдореЗрдВ рдбреЗрдЯрд╛ рд╡рд┐рднрд┐рдиреНрди рднреМрддрд┐рдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдереНрд░реЗрдбреНрд╕ рдХреЗ рдмреАрдЪ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдлрд┐рд░ рдПрд▓рдПрд▓рд╕реА рд╡рд┐рднрд┐рдиреНрди рдЪрд┐рдкреНрд╕ рдХреЗ рдмреАрдЪ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╣реИ - рд╕реИрдХрдбрд╝реЛрдВ рдЪрдХреНрд░ред рдЕрдм рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗрд╡рд▓ рдЗрд╕ рддрдереНрдп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХрд┐ рдПрдХ рдЪрдХреНрд░ рдореЗрдВ рдпрд╣ рдХрд┐рд╕реА рднреА рд╕реНрд░реЛрдд рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЪрдХреНрд░ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдкрд░ рд╕реИрдХрдбрд╝реЛрдВ рдШрдбрд╝реА рдЪрдХреНрд░ рдЦреЛрдиреЗ рд╕реЗ, рд╣рдо рдХрдИ рдмрд╛рд░ рдЕрдкрдирд╛ рдкреНрд░рджрд░реНрд╢рди рдЦреЛрдиреЗ рдХрд╛ рдЬреЛрдЦрд┐рдо рдЙрдард╛рддреЗ рд╣реИрдВред
рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рд░рд▓реАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХреЗ рдХрд╛рд░рдгреЛрдВ рдХреЛ рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рд╣реИред рд╕рдВрдХреЛрдЪ рди рдХрд░реЗрдВ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╕рдорд╛рди рдорд╛рдорд▓реЗ рдмрд╣реБрдд рдЖрдо рд╣реИрдВ, рдФрд░ рдкрд░рд┐рд╖реНрдХреГрдд рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╡рд┐рдкрд░реАрдд, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЗрддрдирд╛ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реИред рдиреАрдЪреЗ рд╣рдо рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рдЬрд▓реНрджреА рд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдПрдХ рд▓реВрдк рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░реАрдо рдлрд╝рдВрдХреНрд╢рди рджреЛ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓рддрд╛ рд╣реИ [i] рдФрд░ b [i], рдЕрдкрдиреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рд░рдгреА рдЗрдВрдбреЗрдХреНрд╕ рд╕реЗ рдЧреБрдгрд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдзрд╛рд░рд╛рдУрдВ рдХреЗ рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдореЗрдВ рд╕реНрдерд╛рдиреАрдпрд╕рдо [tid] рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдкреНрд░рднрд╛рд╡ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдСрдкрд░реЗрд╢рди рдХрдИ рдмрд╛рд░ (ITERATIONS) рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
int work(void *pArg) { int j = 0, i = 0; int tid = (int) pArg; for (j = 0; j < ITERATIONS; j++){ for (i = tid; i < MAXSIZE; i+= NUM_PROCS){ a[i] = i + a[i] * b[i]; localSum[tid] += a[i];}} }
рдкрд░реЗрд╢рд╛рдиреА рдпрд╣ рд╣реИ рдХрд┐ рдзрд╛рд░рд╛рдУрдВ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реВрдк рдЗрдВрдбреЗрдХреНрд╕ рдХреЛ рдЗрдВрдЯрд░рд▓реЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рд╡рд┐рдзрд┐ рдХреЛ рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдЕрдЧрд░ рджреЛ рдзрд╛рд░рд╛рдПрдБ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреА рд╣реИрдВ, рддреЛ рдкрд╣рд▓рд╛, рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░реЗрдЧрд╛ [0] рдФрд░ b [0], рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░рд╛ [1] рдФрд░ b [1], рдкрд╣рд▓рд╛ рд╕реЗ рдПрдХ [2] рдФрд░ b [2] ], рджреВрд╕рд░рд╛ - рдПрдХ [3] рдФрд░ рдмреА [3], рдФрд░ рдЗрд╕реА рддрд░рд╣ред рд╕рд░рдгреА рдХреЗ рддрддреНрд╡ [i] рдереНрд░реЗрдб рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред рдпрд╣ рджреЗрдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рд░рдгреА рдХреЗ 16 рддрддреНрд╡ рдПрдХ рдХреИрд╢ рд▓рд╛рдЗрди рдореЗрдВ рдЧрд┐рд░ рдЬрд╛рдПрдВрдЧреЗ, рдФрд░ рдзрд╛рдЧреЗ рдПрдХ рд╕рд╛рде рдкрдбрд╝реЛрд╕реА рддрддреНрд╡реЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдЬрд╛рдПрдВрдЧреЗ, рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреИрд╢ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рддрдВрддреНрд░ рдХреЗ "рдорди рдХреЛ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реИ"ред

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

рдпрджрд┐ рдХрд┐рд╕реА рдХреЛ рдЗрд╕ рдореАрдЯреНрд░рд┐рдХ рдХреЗ рдкреАрдЫреЗ рдХреНрдпрд╛ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ, рддреЛ рдЬрдЯрд┐рд▓ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди, рдЙрдкрдХрд░рдг рдЕрдиреНрдп рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХрд╛рдЙрдВрдЯрд░реЛрдВ рдХреЗ рдмреАрдЪ рдХрд╛рдЙрдВрдЯрд░ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реИ:
MEM_LOAD_UOPS_LLC_HIT_RETIRED.XSNP_HITM_PS - рд▓реЛрдбрд┐рдВрдЧ (рд▓реЛрдб) рдХрд╛ рдкреВрд░рд╛ рдХрд╛рдЙрдВрдЯрд░ (PS) рдСрдкрд░реЗрд╢рди (OUPS) (LOAD), рдбреЗрдЯрд╛ (MEM), рдЬреЛ LLC рдореЗрдВ (HIT) рдФрд░ рд╕рдВрд╢реЛрдзрд┐рдд (M) рд╣реЛ рдЧрдпрд╛ рд╣реИред рдПрдХ "рд╕рдЯреАрдХ" рдХрд╛рдЙрдВрдЯрд░ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдирдореВрдиреЗ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдХрд╛рдЙрдВрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдПрдХрддреНрд░ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЛ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдмрд╛рдж рдирд┐рд░реНрджреЗрд╢ рд╕реВрдЪрдХ (рдЖрдИрдкреА) рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рд╡рд╣реА рдбрд╛рдЙрдирд▓реЛрдб рдерд╛ рдЬреЛ рдХреИрд╢ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛ред рдЗрд╕ рдореАрдЯреНрд░рд┐рдХ рдкрд░ рдЖрдВрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдХреБрдЫ рд╕рдЯреАрдХрддрд╛ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдкрддрд╛ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░, рддрджрдиреБрд╕рд╛рд░, рд╕реНрд░реЛрдд рдХреЛрдб рдХреА рдкрдВрдХреНрддрд┐ рдЬрд╣рд╛рдВ рд░реАрдбрд┐рдВрдЧ рдмрдирд╛рдИ рдЧрдИ рдереАред рд╡реАрдЯреАрдПрди рдПрдореНрдкрд▓реАрдлрд╛рдпрд░ рдПрдХреНрд╕рдИ рджрд┐рдЦрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реА рд╕реНрдЯреНрд░реАрдо рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рдкрдврд╝рддреА рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╣рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдорд▓реНрдЯреАрдереНрд░реЗрдб рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕реНрдерд┐рддрд┐ рдХреЛ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПред

рд╣рдорд╛рд░реЗ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рд╕реНрдерд┐рддрд┐ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред рдЖрдкрдХреЛ рдмрд╕ рдбреЗрдЯрд╛ рдХреЛ рдмреНрд▓реЙрдХ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдмреНрд▓реЙрдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдереНрд░реЗрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧреАред рдХрд┐рд╕реА рдХреЛ рдЖрдкрддреНрддрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ: рдпрджрд┐ рд╕рд░рдгрд┐рдпрд╛рдВ рдХрд╛рдлреА рдмрдбрд╝реА рд╣реИрдВ, рддреЛ рдмреНрд▓реЙрдХ рдмрд╕ рдХреИрд╢ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдЯреНрд░реАрдо рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рд╕реЗ рд▓реЛрдб рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдПрдХ рджреВрд╕рд░реЗ рдХреЛ рдХреИрд╢ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджреЗрдВрдЧреЗред рдпрд╣ рд╕рдЪ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╕рднреА рдмреНрд▓реЙрдХ рдбреЗрдЯрд╛ рдХрд╛ рд▓рдЧрд╛рддрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдмрд╛рд░ рдирд╣реАрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдореИрдЯреНрд░рд┐рд╕реЗрд╕ рдХреЛ рдЧреБрдгрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рджреЛ-рдЖрдпрд╛рдореА рд╕рд░рдгреА рдХреЗ рддрддреНрд╡реЛрдВ рд╕реЗ рдЧреБрдЬрд░реЗрдВрдЧреЗ, рдкрд╣рд▓реЗ рдкрдВрдХреНрддрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛, рдлрд┐рд░ рд╕реНрддрдВрднреЛрдВ рджреНрд╡рд╛рд░рд╛ред рдФрд░ рдЕрдЧрд░ рджреЛрдиреЛрдВ рдореИрдЯреНрд░рд┐рд╕ рдХреИрд╢ (рдХрд┐рд╕реА рднреА рд╕реНрддрд░ рдкрд░) рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рддрддреНрд╡реЛрдВ рддрдХ рдмрд╛рд░-рдмрд╛рд░ рдкрд╣реБрдВрдЪрдиреЗ рд╕реЗ рдЕрдЧрд▓реЗ рд╕реНрддрд░ рд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдирдХрд╛рд░рд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рдореИрдЯреНрд░рд┐рд╕реЗрд╕ рдХреЗ рд╕рд╛рде рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рдВрд╢реЛрдзрд┐рдд рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрд╛ рдХреЛ рдмреНрд▓реЙрдХ рджреНрд╡рд╛рд░рд╛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдореИрдЯреНрд░рд┐рд╕ рдХреЛ рдЙрди рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдХреИрд╢ рдореЗрдореЛрд░реА рдореЗрдВ рд░рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдХрд╛рдлреА рдмрдврд╝рд╛рддрд╛ рд╣реИред
int work(void *pArg) { int j = 0, i = 0; int tid = (int) pArg; for (j = 0; j < ITERATIONS; j++){ chunks = MAXSIZE / NUM_PROCS; for (i = tid * chunks; i < (tid + 1) * chunks; i++){ a[i] = i + a[i] * b[i]; localSum[tid] += a[i];}} }
рдЧрд▓рдд рдмрдВрдЯрд╡рд╛рд░рд╛
рдХреЛрдИ рдЭреВрдард╛ рдмрдВрдЯрд╡рд╛рд░рд╛ рдирд╣реАрдВ
рдЧрд▓рдд рд╕рд╛рдЭрд╛рдХрд░рдг рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдФрд░ рд╕рд╣реА рдХреЛрдб рдореЗрдВ рд╕рд░рдгреА рддрддреНрд╡реЛрдВ рддрдХ рдереНрд░реЗрдб рдПрдХреНрд╕реЗрд╕ рдХреА рддреБрд▓рдирд╛рд╣рдорд╛рд░реЗ рд╕рд╛рдзрд╛рд░рдг рдорд╛рдорд▓реЗ рдореЗрдВ, рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рднрд▓реЗ рд╣реА рдЗрд╕реЗ рдХреИрд╢ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдП, рд╣рдореЗрдВ рдЕрдм рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдФрд░ рдкрддрд╛ рд╕реНрдерд╛рди рдореЗрдВ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╕реНрдерд┐рдд [i] рдФрд░ b [i] рджреЛрдиреЛрдВ рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкреНрд░реАрдлрд╝реЗрдЪрд░ рджреНрд╡рд╛рд░рд╛ рд╕рдордп рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рд▓рд╛рдЧреВ рдореБрдЦреНрдп рдореЗрдореЛрд░реА рд╕реЗ рдбреЗрдЯрд╛ рдкрдВрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ред рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЕрдЧрд░ рд╕рд░рдгреА рдХреЗ рддрддреНрд╡реЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╕реБрд╕рдВрдЧрдд рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, рд╣рдо рдереНрд░реЗрдбреНрд╕ рдХреЗ рдмреАрдЪ рдХреИрд╢ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рджрдХреНрд╖рддрд╛ рдХреЗ рдиреБрдХрд╕рд╛рди рдХреА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдорд╕реНрдпрд╛ рдХреЗ рдирд╛рдо рд╕реЗ, рдЖрдк рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреЛрдбрд┐рдВрдЧ рд╕реЗ рдмрдЪрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд╣рд╛рдВ рдереНрд░реЗрдбреНрд╕ рдЖрдо рдбреЗрдЯрд╛ рддрдХ рдмрд╣реБрдд рдмрд╛рд░ рдкрд╣реБрдВрдЪрддреЗ рд╣реИрдВред рдпрджрд┐ рдпрд╣ рдереНрд░реЗрдб рдХреЗ рд╕рд╛рде рдореНрдпреВрдЯреЗрдХреНрд╕ рдХрд╛ рд╕рд╣реА рд╕рд╛рдЭрд╛рдХрд░рдг рд╣реИ, рддреЛ рдЕрддреНрдпрдзрд┐рдХ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдЗрд╕ рдореНрдпреВрдЯреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд░рдХреНрд╖рд┐рдд рд╕рдВрд╕рд╛рдзрди рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╡реИрд╢реНрд╡рд┐рдХ рдФрд░ рд╕реНрдерд┐рд░ рдЪрд░ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ, рдЬреЛ рдереНрд░реЗрдбреНрд╕ рд╕реЗ рдкрд╣реБрдВрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╕реНрдерд╛рдиреАрдп рдереНрд░реЗрдб рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдпрджрд┐ рдЖрдк рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдореЛрдб рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрдирдХреЗ рдЖрдХрд╛рд░ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ 64 рдмрд╛рдЗрдЯреНрд╕ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
struct data_packet { int address[4]; int data[8]; int attribute; int padding[3]; }
рд╕рдВрд░реЗрдЦрд┐рдд рдкрддреЗ рдкрд░ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдореГрддрд┐ рдЖрд╡рдВрдЯрд┐рдд рдХрд░реЗрдВ:
__declspec(align(64)) struct data_packet sendpack
рд╕рд░рдгреА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдмрдЬрд╛рдп рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреА рд╕рд░рдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
data_packet sendpack[NUM];
рдХреЗ рдмрдЬрд╛рдп
struct data_packet { int address[4][NUM]; int data[8][NUM]; int attribute[NUM]; }
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд╛рдж рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЦреЗрддреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдзрд╛рдЧреЗ рдХреИрд╢ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рддрдВрддреНрд░ рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗред
рдореЙрд▓реЙрдХ рдпрд╛ рдирдП рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрддрд┐рд╢реАрд▓ рдореЗрдореЛрд░реА рдореЗрдВ рдЖрд╡рдВрдЯрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП, рдереНрд░реЗрдбреНрд╕ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдп рдореЗрдореЛрд░реА рдкреВрд▓ рдмрдирд╛рдПрдВ, рдпрд╛ рд╕рдорд╛рдирд╛рдВрддрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬреЛ рдпрд╣ рд╕реНрд╡рдпрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреАрдмреАрдмреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рд╕реНрдХреЗрд▓реЗрдмрд▓ рдФрд░ рд▓реЗрд╡рд▓рд┐рдВрдЧ
рдПрд▓реЛрдХреЗрдЯрд░ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдорд▓реНрдЯреАрдереНрд░реЗрдбреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрддреЗ рд╣реИрдВред
рдЦреИрд░, рдЕрдВрддрд┐рдо рдЯрд┐рдк: рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд▓реНрджреА рдордд рдХрд░реЛ рдЕрдЧрд░ рдпрд╣ рдЖрд╡реЗрджрди рдХреЗ рд╕рдордЧреНрд░ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рд▓рд╛рдЧрдд рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рд╕рдВрднрд╛рд╡рд┐рдд рд▓рд╛рдн рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░реЗрдВред рдЗрд╕ рд▓рд╛рдн рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
PS рдореЗрд░реЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рдФрд░ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдЖрдкрдХреЗ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХреА рдЧрддрд┐ рдХрд┐рддрдиреЗ рдкреНрд░рддрд┐рд╢рдд рдмрдврд╝реА рд╣реИред