Getting Started
Integrate FramePro into your codebase in minutes - simply add FramePro.cpp/h into your code and start adding scopes. Add timing scopes using the supplied macros to any function or block of code. FramePro will then track the time, thread and core of each scope. This scope information will be sent to the FramePro application, where thread and core utilization can be viewed for each frame.
Why FramePro?
FramePro has minimal overhead. When profiling, the first rule is to not change the behavior of what is being profiled. FramePro allows you to add thousands of timing scopes per frame with no noticeable impact on frame rate.
Profile in real-time. In interactive mode you can see the data as it is being recorded, easily spot a frame rate spike, and immediately zoom in to that frame to find the cause.
No limit to the length of a capture. Unlike many profilers which can only capture a few seconds worth of data, FramePro can capture long play sessions.
Framepro uses the highest resolution timer available on your system. It is configured for many platforms and easily configurable.
FramePro is easy and intuitive to use. Everyone who sees FramePro in action immediately 'gets it'. FramePro can be used by programmers and non-programmers alike.
How it works
Call the FRAMEPRO_FRAME_START() macro at the start of your frame. This tells FramePro when the frame starts and ends and this will be marked on the timeline in both the thread and code view. This simple feature is one which many profilers lack.
Use the FRAMEPRO_SCOPE() macro to time a function call. This creates an object on the stack that records information. In its constructor it records the start time using the high resolution system timer. In its destructor it records the end time, the current thread id, the current CPU core, and the current function name. This information is then copied onto a thread local storage (TLS) buffer. These TLS buffers are sent once a frame on a separate thread.
The scope recording code is minimal and consists of only a few instructions. The thread local storage means that there is no locking or contention with other threads. The function name string is a string literal, and the only value that is sent to FramePro is the pointer. The actual string value is resolved later. All this means that there are only a few instruction per scope, and only a few bytes of data is copied to the send buffer. this allows you to add thousands of scopes per frame without affecting frame rate.
There are a number of different scope macros. If you want to name a scope use FRAMEPRO_NAMED_SCOPE("MyScope"). You can also send dynamic (non-literal) strings using FRAMEPRO_DYNAMIC_SCOPE(). to scope idle processor time, such as in an event wait, use FRAMEPRO_IDLE_SCOPE(). This will show up in a different colour in FramePro. Use the conditional scopes to only show the scope if it is longer than a specified time. This time can be dynamically changed in FramePro while recording. The scope macros are fully documented in FramePro.h.
FramePro can run in connected or offline mode. When running in connected mode your application will send data using sockets every frame. FramePro will then display the data as it is received. You can pause the data and inspect frames at any time while recording. If you don't want the overhead of FramePro on your system you can run in non-interactive mode and it will take up almost no CPU. This is useful when profiling on the same PC as you are running the application. For best results, it is recommended that you run your application/game on a different PC or Console and then connect in interactive mode.
If your codebase doesn't support sockets or you can't connect for some other reason you can run FramePro in offline mode and all network data will be written to a .framepro_dump file. This file can then be loaded into framepro.
توضیحات ناشر (انگلیسی)
FramePro چیست؟
FramePro ساخته PureDev Software در دستهبندی ابزارهای کمکی برنامهنویسی قرار دارد و نرمافزاری انحصاری است.
نصب و پیشنیازها
ناشر نصبکنندههای EXE (WiX Burn) را برای ویندوز ۶۴ بیتی ارائه میکند. نصب آن به دسترسی مدیر (Administrator) نیاز دارد. با سوئیچهای مستند نصبکننده، نصب بیصدا امکانپذیر است.
محبوبیت و انواع فایل
در ویندوز ۱ نوع فایل را ثبت میکند، از جمله .framepro. نرمافزارهای مشابه: WinMerge، jq و x64dbg.
نقاط قوت / نقاط ضعف
نقاط قوت
- نصب بیصدای مستند
نقاط ضعف
- مجوز انحصاری: شرایط و قیمت را بررسی کنید
- بدون نسخه بومی ARM64
- نصب به دسترسی مدیر نیاز دارد
به طور خلاصه: FramePro ابزاری در دستهبندی ابزارهای کمکی برنامهنویسی برای رایانههای ۶۴ بیتی است. مدیران سیستم میتوانند آن را بدون دخالت کاربر توزیع کنند.
آیا دانلود FramePro امن است؟
- فایل از puredevsoftware.com، دامنه خود ناشر، ارائه میشود
- لینک دانلود از HTTPS استفاده میکند
- هش SHA256 منتشر شده است و میتوانید فایل را بررسی کنید:
7EC28A1EA8267494243D08C52D082E3B4DC1CFF64A0B16B8A3894758E7209727· گزارش VirusTotal این هش را باز کنید - لینک در آخرین بررسی پاسخ داد (۳۰ مهر ۱۴۰۵)
- ExeAtlas فایلهای نصب را میزبانی، بستهبندی یا تغییر نمیدهد
آموزش مرتبط: بررسی هش SHA256 فایل در ویندوز
نسخههای اخیر
همه ۱ نسخه ›| نسخه | تاریخ | حجم | فایلها |
|---|---|---|---|
| 1.12.1.0آخرین | ۱۵ اردیبهشت ۱۴۰۵ | — | ۶۴ بیتی EXE (WiX Burn) |
نصب از خط فرمان
نصب بیصدا ›winget install --id PureDevSoftware.FramePro -edownload.php /quiet /norestartmsiexec /x {45B41328-DE80-430A-9FF2-FEA12D14BD1B} /qn /norestartآموزش مرتبط: آموزش winget: نصب و بهروزرسانی نرمافزار در ویندوز
اطلاعات
- ناشر
- PureDev Software
- دستهبندی
- ابزارهای کمکی برنامهنویسی
- مجوز
- Proprietary
- قیمت
- به سایت ناشر مراجعه کنید
- پیشنیاز
- Windows 11 / 10
- معماری
- ۶۴ بیتی
- نوع نصبکننده
- EXE (WiX Burn)
- نسخه
- 1.12.1.0
- تاریخ انتشار
- ۱۵ اردیبهشت ۱۴۰۵
- تاریخ افزودن به فهرست
- ۱۲ خرداد ۱۴۰۵
- نسخههای فهرستشده
- 1
- وبسایت رسمی
- puredevsoftware.com
- شناسه winget
- PureDevSoftware.FramePro
- کد محصول MSI
- {45b41328-de80-430a-9ff2-fea12d14bd1b}
انواع فایلی که باز میکند (1)
امتیازها و نظرها
هنوز نظری ثبت نشده است. نخستین امتیاز را شما بدهید.
جایگزینهای FramePro
مشاهده همه ›-
متنباز۱٫۲ میلیون ↓ -
متنباز۵٫۱ میلیون ↓ -
متنباز۹۵٫۸ هزار ↓ -
متنباز۱۰٫۵ هزار ↓ -
متنباز۱۸٫۸ هزار ↓ -
متنباز۱۵٫۷ هزار ↓ -
متنباز۲۸٫۳ هزار ↓ -
متنباز۴۰٫۷ هزار ↓
پرسشهای متداول
آیا FramePro رایگان است؟
FramePro نرمافزاری انحصاری (متنبسته) است (مجوز: Proprietary). رایگان یا پولی بودن آن به نسخه بستگی دارد؛ قیمتها و نسخههای رایگان را در سایت ناشر ببینید.
آیا دانلود FramePro امن است؟
فایل از puredevsoftware.com که متعلق به خود ناشر است دانلود میشود؛ ExeAtlas فایل را میزبانی یا تغییر نمیدهد. هش SHA256 فایل را با هش نمایشدادهشده در این صفحه مقایسه کنید یا گزارش VirusTotal همین هش را باز کنید.
چگونه FramePro را با winget نصب کنیم؟
PowerShell یا Windows Terminal را باز کنید و دستور winget نمایشدادهشده در این صفحه را اجرا کنید. winget فایل نصب رسمی را دانلود میکند و پیش از اجرا، هش SHA256 آن را بررسی میکند.
آیا میتوان FramePro را بیصدا نصب کرد؟
بله. صفحه نصب بیصدا دستور دقیق هر نصبکننده را نشان میدهد.
آیا FramePro روی ARM (Windows on Arm) اجرا میشود؟
نسخه ARM64 وجود ندارد؛ Windows 11 on Arm میتواند نسخه ۶۴ بیتی را با شبیهسازی اجرا کند.
جایگزینهای FramePro کداماند؟
WinMerge، jq، x64dbg، Biome و delta. صفحه جایگزینها آنها را با هم مقایسه میکند.