.\"************************************************************************** .\"* * .\"* OCaml * .\"* * .\"* Xavier Leroy, projet Cristal, INRIA Rocquencourt * .\"* * .\"* Copyright 1996 Institut National de Recherche en Informatique et * .\"* en Automatique. * .\"* * .\"* All rights reserved. This file is distributed under the terms of * .\"* the GNU Lesser General Public License version 2.1, with the * .\"* special exception on linking described in the file LICENSE. * .\"* * .\"************************************************************************** .\" .TH "OCAMLCP" 1 .SH "نام (NAME)" ocamlcp, ocamloptp \- کامپایلرهای پروفایل‌سازی OCaml .SH "خلاصه دستور (SYNOPSIS)" .B ocamlcp [ .I "گزینه‌های ocamlc" ] [ .BI \-P " flags" ] .I filename ... .B ocamloptp [ .I "گزینه‌های ocamlopt" ] [ .BI \-P " flags" ] .I filename ... .SH "توضیحات (DESCRIPTION)" دستورهای .B ocamlcp و .B ocamloptp پیشانه‌هایی برای .BR ocamlc (1) و .BR ocamlopt (1) هستند که کد منبع را ابزارگذاری (instrument) می‌کنند؛ یعنی کدهایی را برای ثبت تعداد دفعات فراخوانی توابع، پیموده شدن شاخه‌های شرطی و غیره به آن می‌افزایند. اجرای کد ابزارگذاری‌شده، یک پروفایل اجرایی در فایل ocamlprof.dump تولید می‌کند که با استفاده از .BR ocamlprof (1) قابل خواندن است. .B ocamlcp همان آرگومان‌ها و گزینه‌های .BR ocamlc (1) را می‌پذیرد و .B ocamloptp نیز همان آرگومان‌ها و گزینه‌های .BR ocamlopt (1) را می‌پذیرد. تنها یک استثنا وجود دارد: در هر دو مورد، گزینهٔ .B \-pp پشتیبانی نمی‌شود. اگر نیاز به پیش‌پردازش فایل‌های منبع خود دارید، باید این کار را پیش از فراخوانی .B ocamlcp یا .B ocamloptp به‌صورت جداگانه انجام دهید. .SH "گزینه‌ها (OPTIONS)" علاوه بر گزینه‌های .BR ocamlc (1) یا .BR ocamlopt (1) ، دستورهای .B ocamlcp و .B ocamloptp گزینه‌ای برای کنترل نوع اطلاعات پروفایل‌سازی می‌پذیرند: گزینهٔ .BI \-P " letters" \&. این .I letters مشخص می‌کنند کدام بخش‌های برنامه باید پروفایل‌سازی شوند: .TP .B a تمام گزینه‌ها .TP .B f فراخوانی‌های توابع: یک نقطهٔ شمارش در ابتدای بدنهٔ هر تابع تنظیم می‌شود .TP .B i .BR if " ... " then " ... " else\c : نقاط شمارش در هر دو شاخهٔ .BR then و .BR else تنظیم می‌شوند .TP .B l حلقه‌های .BR while " و " for\c : یک نقطهٔ شمارش در ابتدای بدنهٔ حلقه تنظیم می‌شود .TP .B m شاخه‌های .BR match : یک نقطهٔ شمارش در ابتدای بدنهٔ هر شاخه از یک تطبیق الگو (pattern-matching) تنظیم می‌شود .TP .B t شاخه‌های .BR try " ... " with\c : یک نقطهٔ شمارش در ابتدای بدنهٔ هر شاخه از یک دریافت‌کنندهٔ استثنا تنظیم می‌شود .PP به‌عنوان مثال، کامپایل با .B ocamlcp \-P film فراخوانی توابع، .BR if " ... " then " ... " else " ...،" حلقه‌ها و تطبیق الگو را پروفایل‌سازی می‌کند. فراخوانی .BR ocamlcp (1) یا .BR ocamloptp (1) بدون گزینهٔ .B \-P به‌طور پیش‌فرض معادل .BR \-P " fm" خواهد بود، به این معنی که فقط فراخوانی توابع و تطبیق الگو پروفایل‌سازی می‌شوند. نکته: برای سازگاری با نسخه‌های پیشین، .BR ocamlcp (1) همچنین گزینهٔ .B \-p را با همان آرگومان و معنای .BR \-P می‌پذیرد. .SH "همچنین ببینید (SEE ALSO)" .BR ocamlc "(1), " ocamlopt "(1), " ocamlprof (1). .br .IR "The OCaml user's manual" ، فصل "Profiling".