{"id":308,"date":"2025-01-14T17:53:46","date_gmt":"2025-01-14T17:53:46","guid":{"rendered":"http:\/\/10.220.16.170\/?page_id=308"},"modified":"2025-01-30T08:01:23","modified_gmt":"2025-01-30T08:01:23","slug":"proof-2","status":"publish","type":"page","link":"https:\/\/micc.jinr.ru\/?page_id=308","title":{"rendered":"PROOF"},"content":{"rendered":"<article class=\"b-manual no-sidebar\">\n<h1>PROOF<\/h1>\n<div class=\"b-content-row\">\n<div class=\"b-content-column\" style=\"width: 35%;\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/01\/proof.png\" alt=\"\" width=\"350\" height=\"400\" \/><\/p>\n<div class=\"b-content-column-end\"><\/div>\n<\/div>\n<div class=\"b-content-column\" style=\"width: 65%;\">\n<div><\/div>\n<div>PROOF &#8211; Parallel ROOT Facility \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u043c ROOT, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u043c \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043d\u0430\u0431\u043e\u0440\u043e\u0432 ROOT \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 \u043c\u043d\u043e\u0433\u043e\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d\u0430\u0445. \u0422\u043e \u0435\u0441\u0442\u044c PROOF \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0441\u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043a\u0430\u043a \u0440\u044f\u0434 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u043f\u043e\u0434\u0437\u0430\u0434\u0430\u0447.<\/div>\n<div><\/div>\n<div><a href=\"http:\/\/wwwinfo.jinr.ru\/~tanyusha\/proof_tree.html\" target=\"_blank\" rel=\"noopener\">PROOF \u0438 \u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 TTree. \u041f\u0440\u0438\u043c\u0435\u0440.<\/a><\/div>\n<div class=\"b-content-column-end\"><\/div>\n<\/div>\n<\/div>\n<p>PROOF \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442:<\/p>\n<ul>\n<li>\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 (\u0438\u043b\u0438 \u043e\u0447\u0435\u043d\u044c \u043c\u0430\u043b\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e) \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0439 \u043c\u0435\u0436\u0434\u0443 \u0441\u0435\u0441\u0441\u0438\u0435\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0430, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c ROOT \u0438 \u043e\u0442\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0441\u0441\u0438\u0435\u0439 PROOF. \u0422\u0438\u043f\u0438\u0447\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e.<\/li>\n<li>\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u043d\u0430 \u0447\u0438\u0441\u043b\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e.<\/li>\n<li>\u0410\u0434\u0430\u043f\u0442\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u044c \u0441\u0435\u0441\u0441\u0438\u0438 \u043a \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u043c \u0432 \u043e\u0442\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u0439 \u0441\u0440\u0435\u0434\u0435 (\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043d\u0430 \u0443\u0437\u043b\u0430\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430, \u0441\u0435\u0442\u0435\u0432\u044b\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f\u043c, \u0438 \u0442.\u0434.).<\/li>\n<\/ul>\n<p>\u0412 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 PROOF \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u044b &#8211; &#8220;workers&#8221; &#8211; \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u044e\u0442 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0441\u044f\u043a\u0438\u0439 \u0440\u0430\u0437, \u043a\u043e\u0433\u0434\u0430 \u043e\u043d\u0438 \u0433\u043e\u0442\u043e\u0432\u044b \u0435\u0435 \u043f\u0440\u043e\u0434\u0435\u043b\u0430\u0442\u044c. \u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0446\u0435\u043b\u044c PROOF &#8211; \u043c\u0438\u043d\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u0449\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0432\u0441\u0435\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 workers, \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044e\u0449\u0438\u0445 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u0443\u044e \u0438\u043c \u0437\u0430\u0434\u0430\u0447\u0443 \u0432 \u043e\u0434\u043d\u043e \u0438 \u0442\u043e \u0436\u0435 \u0432\u0440\u0435\u043c\u044f. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0445\u0435\u043c\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0439 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f, &#8220;\u043f\u0430\u043a\u0435\u0442\u0430&#8221;- \u043e\u0431\u044a\u0435\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b, \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u0430 worker, \u0438 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0442\u0438. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0430\u043a\u0435\u0442\u0430. \u0415\u0441\u043b\u0438 \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0430\u043a\u0435\u0442\u0430 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u0430\u043b, \u0442\u043e \u044d\u0444\u0444\u0435\u043a\u0442 \u043e\u0442 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u043d\u0438\u0432\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d \u0442\u0440\u0430\u0442\u043e\u0439 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0443 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0432\u044b\u0437\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u043c\u0438 \u043c\u043d\u043e\u0433\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043f\u043e \u0441\u0435\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 \u0432\u0435\u0434\u0443\u0449\u0438\u043c \u0438 \u0432\u0435\u0434\u043e\u043c\u044b\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438. \u0415\u0441\u043b\u0438 \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0430\u043a\u0435\u0442\u0430 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0432\u0435\u043b\u0438\u043a, \u044d\u0444\u0444\u0435\u043a\u0442 \u0440\u0430\u0437\u043d\u0438\u0446\u044b \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d. \u0414\u0440\u0443\u0433\u0438\u043c \u043e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u044b\u043c \u0444\u0430\u043a\u0442\u043e\u0440\u043e\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043f\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c \u0443\u0437\u043b\u0430\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u0438\u043b\u0438 \u043e\u0442\u0434\u0435\u043b\u0435\u043d\u044b \u0434\u0440\u0443\u0433 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430 \u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438. \u0414\u043b\u044f \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438 \u044d\u0442\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432\u043c\u0435\u0441\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0435\u0434\u0438\u043d\u044b\u0439 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u043c\u043d\u043e\u0433\u0438\u0445 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432.<\/p>\n<p>\u041f\u0430\u043a\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0434\u0432\u0443\u0445 \u0447\u0438\u0441\u0435\u043b: \u00ab\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435\u00bb \u0438 \u00ab\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u0439\u00bb. \u0420\u0430\u0437\u043c\u0435\u0440 \u043f\u0430\u043a\u0435\u0442\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u0441\u043b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b workers \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0413\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 &#8211; &#8220;\u043c\u0430\u0441\u0442\u0435\u0440&#8221; \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043f\u0430\u043a\u0435\u0442 \u043f\u0440\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u043f\u043e\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u0430\u043a\u0435\u0442\u0430 \u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0446\u0435\u043f\u043e\u0447\u043a\u0435. \u041c\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043d\u0430 \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e &#8220;worker&#8221; &#8220;\u0443\u043c\u0438\u0440\u0430\u0435\u0442&#8221; \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0432\u0441\u0435 \u0435\u0433\u043e \u043f\u0430\u043a\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u044b \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u043c\u0438 &#8220;workers&#8221;. \u0412 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u043f\u0430\u043a\u0435\u0442 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u0442\u043e\u043b\u044c \u0436\u0435 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u043c \u043a\u0430\u043a \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 &#8211; \u0441\u043e\u0431\u044b\u0442\u0438\u0435.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c PROOF, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c (\u043a\u043b\u0438\u0435\u043d\u0442) \u0434\u043e\u043b\u0436\u0435\u043d \u043d\u0430\u0447\u0430\u0442\u044c \u0441\u0435\u0441\u0441\u0438\u044e PROOF. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u044d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 TProof \u0438\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u043d\u0435\u0433\u043e.<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">root[] TRpoof *proof = TProof::Open(&#8220;url&#8221;)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u042d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0441 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 Parallel ROOT Facility \u043d\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435. \u041e\u043d \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u044b workers, \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0435\u0442 \u0438\u0445 \u0440\u0430\u0431\u043e\u0442\u0443, \u0441\u0442\u0430\u0442\u0443\u0441 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0445\u043f\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438, \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0432\u0441\u0435\u0445 workers, \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0438 \u0442.\u0434. \u041f\u043e\u043b\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 TProof \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0437\u0434\u0435\u0441\u044c. \u041c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b TProof.<\/p>\n<p>\u041c\u0435\u0442\u043e\u0434<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">TProof * TProof::Open(const char * cluster = 0, const char * conffile = 0, const char * confdir = 0, Int_t loglevel = 0)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 Proof \u0441\u0435\u0441\u0441\u0438\u044e \u043d\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435. \u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 &#8211; URL, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0434\u0440\u0435\u0441 master-\u0443\u0437\u043b\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u0412\u0442\u043e\u0440\u043e\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 &#8211; \u0441onffile &#8211; \u044d\u0442\u043e \u0438\u043c\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 PROOF-\u043a\u043b\u0430\u0441\u0442\u0435\u0440 (\u044d\u0442\u043e\u0442 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u0430\u043c \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430). \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0444\u0430\u0439\u043b proof.conf. \u0422\u0440\u0435\u0442\u0438\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 &#8211; confdir &#8211; \u044d\u0442\u043e \u043a\u0430\u0442\u0430\u043b\u043e\u0433, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 PROOF \u0444\u0430\u0439\u043b\u044b (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0444\u0430\u0439\u043b\u044b motd \u0438 noproof).<\/p>\n<p>\u041c\u0435\u0442\u043e\u0434<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">TProof::Print (Option_t opt)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0438\u0442\u043e\u0433\u043e\u0432\u044b\u0439 \u0441\u0442\u0430\u0442\u0443\u0441 \u0441\u0435\u0441\u0441\u0438\u0438. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u043d \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u0438 master, \u043e \u0432\u0435\u0440\u0441\u0438\u0438 ROOT, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435, \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0447\u0438\u0441\u043b\u043e \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0445 \u0438 \u043d\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0445 workers, \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0438 \u0432\u0440\u0435\u043c\u044f CPU \u0438 \u0432\u0432\u043e\u0434\u0435\/\u0432\u044b\u0432\u043e\u0434\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0432 \u0441\u0435\u0441\u0441\u0438\u0438, \u0438 \u0442.\u0434. \u0438 \u0442.\u043f.<\/p>\n<p>\u041c\u0435\u0442\u043e\u0434<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">TProof::Exec(const char\u00a0 *cmd)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b ROOT \u043d\u0430 workers \u0438\u043b\u0438 \u043d\u0430 master. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, PROOF \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b CINT, \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0438\u0435 \u0444\u0430\u0439\u043b\u0430 (&#8216;.L&#8217;, &#8216;.x&#8217; \u0438 &#8216;.X&#8217;), \u0438 \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0430 \u0443\u0437\u043b\u0430\u0445. \u0424\u0430\u0439\u043b \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f, \u0442\u043e\u043b\u044c\u043a\u043e \u0435\u0441\u043b\u0438 \u044d\u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e.<\/p>\n<p>\u041c\u0435\u0442\u043e\u0434<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">TProof::SetParallel(Int_t nodes))<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 PROOF, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0443\u0437\u043b\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e.<\/p>\n<p>\u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043c\u0430\u043a\u0440\u043e\u0441\u0430 \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0437 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0438\u0437-\u0437\u0430 \u0435\u0433\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u043e workers. \u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437 \u0438 \u0434\u0430\u043b\u0435\u0435, \u0435\u0441\u043b\u0438 \u043c\u0430\u043a\u0440\u043e\u0441 \u043d\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0441\u044f, \u0442\u043e \u043e\u043d \u0438\u0434\u0435\u0442 \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 workers, \u0430 \u043d\u0435 \u043d\u0430 master. \u0427\u0442\u043e\u0431\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0435\u0435 \u043d\u0430 master, \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">root [3] proof-&gt;SetParallel(0)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u041c\u0435\u0442\u043e\u0434 Process \u0438\u043c\u0435\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0438\u043f\u043e\u0432 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430:<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\n<p>Long64_t TProof::Process(TDSet * dset, const char * selector, Option_t * option = &#8220;&#8221;, Long64_t \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 nentries = -1,<\/p>\n<p>Long64_t first = 0)<\/p>\n<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u043d\u0430\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0432 ROOT \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u043c TDSet, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u0430 (.C) \u0438\u043b\u0438 \u043e\u0431\u044a\u0435\u043a\u0442 TSelector.<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\n<p>Long64_t TProof::Process(TFileCollection * fc, const char * selector, Option_t * option = &#8220;&#8221;, Long64_t nentries = -1,<\/p>\n<p>Long64_t first = 0)<\/p>\n<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u043d\u0430\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445 (TFileCollection), \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u0430 (.C) \u0438\u043b\u0438 \u043e\u0431\u044a\u0435\u043a\u0442 TSelector.<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">Long64_t TProof::Process(const char * selector, Long64_t n, Option_t * option = &#8220;&#8221;)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u041e\u0431\u0449\u0430\u044f (\u043d\u0435 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043d\u0430 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445) \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u0430: \u043c\u0435\u0442\u043e\u0434 Process() \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u0430 (.C) \u0438\u043b\u0438 TSelector \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u00abn\u00bb \u0440\u0430\u0437. \u0427\u0442\u043e \u0436\u0435 \u0442\u0430\u043a\u043e\u0435 \u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440?<\/p>\n<p>\u0421\u0435\u043b\u0435\u043a\u0442\u043e\u0440<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0431\u044b\u0442\u044c \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u044f, PROOF \u0434\u043e\u043b\u0436\u0435\u043d \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0442\u043e\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u0439. \u042d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442, \u0447\u0442\u043e\u0431\u044b \u043a\u043e\u0434 \u0431\u044b\u043b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0437\u0430\u0440\u0430\u043d\u0435\u0435, \u043d\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0438\u043c\u0435\u043b \u0433\u0438\u0431\u043a\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443. \u0412 ROOT \u044d\u0442\u043e \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 \u0421\u0435\u043b\u0435\u043a\u0442\u043e\u0440, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u043c \u043a\u043b\u0430\u0441\u0441\u043e\u043c TSelector, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0440\u0438 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0448\u0430\u0433\u0430:<\/p>\n<p><strong>Begin<\/strong>\u00a0&#8211; \u041d\u0430\u0447\u0430\u043b\u043e, \u0433\u0434\u0435 \u0437\u0430\u0434\u0430\u044e\u0442\u0441\u044f \u0432\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0432\u044b\u0432\u043e\u0434; \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u0438 workers;<\/p>\n<p><strong>Process<\/strong>\u00a0&#8211; \u041f\u0440\u043e\u0446\u0435\u0441\u0441, \u0433\u0434\u0435 \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430; \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f, \u043d\u0430 workers. \u0418\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0435\u043d\u0430;<\/p>\n<p><strong>Terminate<\/strong>\u00a0&#8211; \u0424\u0438\u043d\u0430\u043b, \u0433\u0434\u0435 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b (\u0444\u0438\u0442\u0438\u0440\u0443\u044e\u0442, \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0442&#8230;); \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c \u0438 workers.<\/p>\n<p>\u0422\u043e \u0435\u0441\u0442\u044c \u0441\u0445\u0435\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0421\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\n<p>\u00a0<strong>void Begin()<\/strong>\u00a0&#8211; \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0435<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\n<p>\u00a0<strong>void SlaveBegin()<\/strong>\u00a0&#8211; \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0443\u0437\u043b\u0430, \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u043e\u043c \u0443\u0437\u043b\u0435<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\u00a0<strong>void Process(Long64_t entry)<\/strong>\u00a0&#8211; \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437 (<strong>entry<\/strong>) \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043e\u043c \u0443\u0437\u043b\u0435<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><strong>void SlaveTerminate()<\/strong>\u00a0&#8211; \u043a\u043e\u043d\u0435\u0447\u043d\u0430\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0443\u0437\u043b\u0435, \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u043e\u043c \u0443\u0437\u043b\u0435<\/p>\n<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>void Terminate() &#8211; \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u0432\u044b\u0432\u043e\u0434 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0435, \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0435<\/p>\n<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>Packetizer<\/p>\n<p>Packetizer \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u0435\u043d \u0437\u0430 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043c\u0435\u0436\u0434\u0443 workers. \u041e\u043d \u0440\u0435\u0448\u0430\u0435\u0442, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u044b\u0439 \u043a\u0443\u0441\u043e\u043a \u0440\u0430\u0431\u043e\u0442\u044b &#8211; \u043f\u0430\u043a\u0435\u0442 &#8211; \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d. \u041e\u0431\u044a\u0435\u043a\u0442 packetizer \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u043d\u0430 master \u0443\u0437\u043b\u0435. \u0420\u0430\u0431\u043e\u0442\u0430 workers, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u043c\u043e\u0433\u0443\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u0435\u043d\u0438\u0442\u044c\u0441\u044f. \u0427\u0442\u043e\u0431\u044b \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u043d\u043e \u0443\u0440\u0430\u0432\u043d\u043e\u0432\u0435\u0441\u0438\u0442\u044c \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b, packetizer \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 pull \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443: \u043a\u043e\u0433\u0434\u0430 workers \u0433\u043e\u0442\u043e\u0432\u044b \u043a \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435, \u043e\u043d\u0438 \u043f\u0440\u043e\u0441\u044f\u0442 \u0443 packetizer \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u0430\u043a\u0435\u0442.<\/p>\n<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u043e\u043c\u0435\u0440\u043d\u0430\u044f \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u043c\u0438 \u0447\u0438\u0441\u043b\u0430\u043c\u0438, \u043f\u043e\u0434\u0447\u0438\u043d\u044f\u044e\u0449\u0438\u043c\u0438\u0441\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044e \u0413\u0430\u0443\u0441\u0441\u0430. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0441\u043a\u0440\u0438\u043f\u0442 \u0434\u043b\u044f \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u0441\u0435\u0441\u0441\u0438\u0438 ROOT \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f PROOF.<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\n<p>#include &#8220;TH1F.h&#8221;<\/p>\n<p>#include &#8220;TRandom.h&#8221;<\/p>\n<p>#include &#8220;TCanvas.h&#8221;<\/p>\n<p>void gauss(Int_t n=100000){<\/p>\n<p><span style=\"color: red;\">TH1F *fH1F = new TH1F(&#8220;FirstH1F&#8221;,&#8221;First TH1F in PROOF&#8221;,100,-10,10);<\/span><\/p>\n<p><span style=\"color: red;\">TRandom *fRandom=new TRandom3(0);<\/span><\/p>\n<p>for(Int_t i=0;i&lt;n;i++){<\/p>\n<p><span style=\"color: blue;\">Double_t x=fRandom-&gt;Gaus(0.,1.);<\/span><\/p>\n<p><span style=\"color: blue;\">fH1F-&gt;Fill(x);<\/span><\/p>\n<p>}<\/p>\n<p><span style=\"color: green;\">TCanvas *c1=new TCanvas(&#8220;c1&#8243;,&#8221;Proof ProofFirst canvas&#8221;,200,10,400,400);<\/span><\/p>\n<p><span style=\"color: green;\">fH1F-&gt;Draw();<\/span><\/p>\n<p><span style=\"color: green;\">c1-&gt;Update();<\/span><\/p>\n<p>}<\/p>\n<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u041a\u0440\u0430\u0441\u043d\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u0435 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b. \u0421\u0438\u043d\u0438\u043c \u0446\u0432\u0435\u0442\u043e\u043c &#8211; \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 &#8211; \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u043c \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b. \u0417\u0435\u043b\u0435\u043d\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u0432\u044b\u0434\u0435\u043b\u0435\u043d \u0432\u044b\u0432\u043e\u0434 \u0434\u0430\u043d\u043d\u044b\u0445 &#8211; \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 canvas \u0438 \u0440\u0438\u0441\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 \u043d\u0435\u043c \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b.<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u0439 \u0436\u0435 \u0441\u0430\u043c\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e, \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c PROOF, \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043a\u043b\u0430\u0441\u0441 ProofFirst, \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0439 \u043e\u0442 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 TSelector. \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u043c\u0435\u0442\u043e\u0434\u044b \u043a\u043b\u0430\u0441\u0441\u0430 TSelector \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0437\u0434\u0435\u0441\u044c. \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0439 \u0444\u0430\u0439\u043b ProofFirst.h \u0438\u043c\u0435\u0435\u0442 \u0432\u0438\u0434:<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\n<p>#ifndef ProofFirst_h<\/p>\n<p>#define ProofFirst_h<\/p>\n<p>#include &lt; TSelector.h &gt;<\/p>\n<p>#include &#8220;TH1F.h&#8221;<\/p>\n<p>#include &#8220;TRandom.h&#8221;<\/p>\n<p>#include &#8220;TCanvas.h&#8221;<\/p>\n<p>&nbsp;<\/p>\n<p>class TH1F;<\/p>\n<p>class TRandom;<\/p>\n<p>&nbsp;<\/p>\n<p>class ProofFirst : public TSelector {<\/p>\n<p>public :<\/p>\n<p><span style=\"color: red;\">\u00a0\u00a0 TH1F\u00a0\u00a0 *fH1F;\u00a0\u00a0\u00a0<\/span><\/p>\n<p><span style=\"color: red;\">\u00a0\u00a0 TRandom *fRandom;<\/span><\/p>\n<p>ProofFirst();<\/p>\n<p>virtual ~ProofFirst();<\/p>\n<p>virtual Int_t\u00a0\u00a0 Version() const { return 2; }<\/p>\n<p>virtual void\u00a0\u00a0\u00a0 Begin(TTree *tree);<\/p>\n<p>virtual void\u00a0\u00a0\u00a0 SlaveBegin(TTree *tree);<\/p>\n<p>virtual Bool_t\u00a0 Process(Long64_t entry);<\/p>\n<p>virtual void\u00a0\u00a0\u00a0 SetOption(const char *option) { fOption = option; }<\/p>\n<p>virtual void\u00a0\u00a0\u00a0 SetObject(TObject *obj) { fObject = obj; }<\/p>\n<p>virtual void\u00a0\u00a0\u00a0 SetInputList(TList *input) { fInput = input; }<\/p>\n<p>virtual TList\u00a0 *GetOutputList() const { return fOutput; }<\/p>\n<p>virtual void\u00a0\u00a0\u00a0 SlaveTerminate();<\/p>\n<p>virtual void\u00a0\u00a0\u00a0 Terminate();<\/p>\n<p>ClassDef(ProofFirst,2);<\/p>\n<p>};<\/p>\n<p>#endif<\/p>\n<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u0430 \u0444\u0430\u0439\u043b \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 ProofFirst.C &#8211;<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">\n<p>&nbsp;<\/p>\n<p>#include &#8220;ProofFirst.h&#8221;<\/p>\n<p>#include &#8220;TH1F.h&#8221;<\/p>\n<p>#include &#8220;TRandom3.h&#8221;<\/p>\n<p>\/\/_____________________________________________________________________________<\/p>\n<p>ProofFirst::ProofFirst()<\/p>\n<p>{<\/p>\n<p>\/\/ Constructor<\/p>\n<p>fH1F = 0;<\/p>\n<p>fRandom = 0;<\/p>\n<p>}<\/p>\n<p>\/\/_____________________________________________________________________________<\/p>\n<p>ProofFirst::~ProofFirst()<\/p>\n<p>{<\/p>\n<p>\/\/ Destructor<\/p>\n<p>if (fRandom) delete fRandom;<\/p>\n<p>}<\/p>\n<p>\/\/_____________________________________________________________________________<\/p>\n<p>void ProofFirst::Begin(TTree * \/*tree*\/)<\/p>\n<p>{<\/p>\n<p>}<\/p>\n<p>\/\/_____________________________________________________________________________<\/p>\n<p>void ProofFirst::SlaveBegin(TTree * \/*tree*\/)<\/p>\n<p>{<\/p>\n<p><span style=\"color: red;\">\u00a0\u00a0 fH1F = new TH1F(&#8220;FirstH1F&#8221;, &#8220;First TH1F in PROOF&#8221;, 100, -10., 10.);<\/span><\/p>\n<p>fOutput-&gt;Add(fH1F);<\/p>\n<p><span style=\"color: red;\">\u00a0\u00a0 fRandom = new TRandom3(0)0<\/span>;<\/p>\n<p>}<\/p>\n<p>\/\/_____________________________________________________________________________<\/p>\n<p>Bool_t ProofFirst::Process(Long64_t)<\/p>\n<p>{<\/p>\n<p>if (fRandom &amp;&amp; fH1F) {<\/p>\n<p><span style=\"color: blue;\">\u00a0\u00a0\u00a0\u00a0\u00a0 Double_t x = fRandom-&gt;Gaus(0.,1.);<\/span><\/p>\n<p><span style=\"color: blue;\">\u00a0\u00a0\u00a0\u00a0\u00a0 fH1F-&gt;Fill(x);<\/span><\/p>\n<p>}<\/p>\n<p>return kTRUE;<\/p>\n<p>}<\/p>\n<p>\/\/_____________________________________________________________________________<\/p>\n<p>void ProofFirst::SlaveTerminate()<\/p>\n<p>{<\/p>\n<p>}<\/p>\n<p>\/\/_____________________________________________________________________________<\/p>\n<p>void ProofFirst::Terminate()<\/p>\n<p>{<\/p>\n<p><span style=\"color: green;\">\u00a0 \u00a0TCanvas *c1 = new TCanvas(&#8220;c1&#8221;, &#8220;Proof ProofFirst canvas&#8221;,200,10,400,400);<\/span><\/p>\n<p>fH1F = dynamic_cast(fOutput-&gt;FindObject(&#8220;FirstH1F&#8221;));<\/p>\n<p>if (fH1F)\u00a0<span style=\"color: green;\">fH1F-&gt;Draw();<\/span><\/p>\n<p><span style=\"color: green;\">\u00a0\u00a0 c1-&gt;Update();<\/span><\/p>\n<p>}<\/p>\n<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u0413\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c \u043a\u0430\u043a \u0447\u043b\u0435\u043d\u044b-\u0434\u0430\u043d\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 ProofFirst (\u043a\u0440\u0430\u0441\u043d\u044b\u0439 \u0446\u0432\u0435\u0442). \u0412 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c 0 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430. \u0412 \u0434\u0435\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0435 \u0443\u043d\u0438\u0447\u0442\u043e\u0436\u0430\u0435\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b. \u0413\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0441\u043f\u0438\u0441\u043a\u0443 \u0432\u044b\u0432\u043e\u0434\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0435\u0435 \u043d\u0435 \u0443\u043d\u0438\u0447\u0442\u043e\u0436\u0430\u0435\u043c. \u041c\u0435\u0442\u043e\u0434 SlaveBegin() \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u044b \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b (\u043a\u0440\u0430\u0441\u043d\u044b\u0439 \u0446\u0432\u0435\u0442). \u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c Process(), \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0435\u0435 &#8211; \u044d\u0442\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u043c \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b (\u0441\u0438\u043d\u0438\u0439 \u0446\u0432\u0435\u0442). \u0412 \u0437\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u043e\u0434 Terminate() \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043d\u0430 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0435 (\u0437\u0435\u043b\u0435\u043d\u044b\u0439 \u0446\u0432\u0435\u0442).<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0443 \u043d\u0430\u0441 \u0432\u0441\u0435 \u0433\u043e\u0442\u043e\u0432\u043e \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u043e\u0442 \u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c PROOF<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">TProof* proof=TProof::Open(&#8220;lite:\/\/&#8221;,&#8221;workers=12&#8243;)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p>\u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043c\u0435\u0442\u043e\u0434<\/p>\n<p><!--\u041d\u0430\u0447\u0430\u043b\u043e \u0431\u043b\u043e\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c--><\/p>\n<div class=\"b-incut-code\">proof-&gt;Process(&#8220;ProofFirst.C+&#8221;, 1000000000)<\/div>\n<p><!--\u0411\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d--><\/p>\n<p><span style=\"color: red;\">\u0412\u043e\u0442 \u0447\u0442\u043e \u0412\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u043d\u0430 \u0412\u0430\u0448\u0438\u0445 \u044d\u043a\u0440\u0430\u043d\u0430\u0445:<\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"color: red;\"><span style=\"color: red;\"><img loading=\"lazy\" decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/01\/proof1.bmp\" alt=\"\" width=\"830\" height=\"623\" \/><\/span><\/span><\/p>\n<p><span style=\"color: red;\">\u00a0<\/span>\u041f\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439\u00a0<a href=\"http:\/\/wwwinfo.jinr.ru\/~tanyusha\/proof_tree.html\" target=\"_blank\" rel=\"noopener\">\u0441\u0441\u044b\u043b\u043a\u0435\u00a0<\/a>\u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440: \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u0430, \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f, \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c, \u0444\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435.<\/p>\n<\/article>\n","protected":false},"excerpt":{"rendered":"<p>PROOF PROOF &#8211; Parallel ROOT Facility \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u043c ROOT, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u043c \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043d\u0430\u0431\u043e\u0440\u043e\u0432 ROOT \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 \u043c\u043d\u043e\u0433\u043e\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d\u0430\u0445. \u0422\u043e \u0435\u0441\u0442\u044c PROOF \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0441\u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043a\u0430\u043a \u0440\u044f\u0434 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u043f\u043e\u0434\u0437\u0430\u0434\u0430\u0447. PROOF \u0438 \u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 TTree. \u041f\u0440\u0438\u043c\u0435\u0440. PROOF \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442: \u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 (\u0438\u043b\u0438 \u043e\u0447\u0435\u043d\u044c \u043c\u0430\u043b\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e) \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0439 \u043c\u0435\u0436\u0434\u0443 \u0441\u0435\u0441\u0441\u0438\u0435\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0430, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c ROOT [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":278,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-root.php","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-308","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=\/wp\/v2\/pages\/308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=308"}],"version-history":[{"count":4,"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=\/wp\/v2\/pages\/308\/revisions"}],"predecessor-version":[{"id":631,"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=\/wp\/v2\/pages\/308\/revisions\/631"}],"up":[{"embeddable":true,"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=\/wp\/v2\/pages\/278"}],"wp:attachment":[{"href":"https:\/\/micc.jinr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}