GithubHelp home page GithubHelp logo

talanc / vlisp-profiler Goto Github PK

View Code? Open in Web Editor NEW
4.0 2.0 1.0 3.19 MB

Profiler for applications written in AutoCAD Visual LISP.

License: MIT License

C# 91.25% Common Lisp 6.28% NSIS 2.06% Batchfile 0.42%
autocad visual-lisp profiler

vlisp-profiler's Introduction

VLispProfiler

VLispProfiler is a tool for AutoCAD to measure the performance of applications built with Visual LISP.

Use this tool to see where your application is spending it's time and guide where you should optimize.

Requires AutoCAD 2011+ Full (not LT) to use.

Build Status

Features

  • Easy to use installer that automatically sets up AutoCAD.
  • One simple to use AutoCAD command: prof.
  • Profile your LISP files and optionally specify an entry function.
  • Reported output includes: elapsed time, self-elapsed time, run count, and file position.
  • Interactive setup program for advanced configurations.
  • Installs to current user, no admin required.

Get Started

Installing

Download and run the latest installer. See Releases.

Install

Profiling

  1. Open AutoCAD
  2. Type prof
  3. Select a LISP file to profile.
  4. Type in an entry function, leave empty and press Enter if the file doesn't have one.
  5. Observe profiling results.

Profiling the whole file

Use this method when there's no entry function in your file. For example: when (load "file") loads and runs your program.

Profile file

Profiling from entry function

Use this method when there's an entry function in your file. For example: when (load "file") loads your program and you follow it up with (entry-func) to run your program. Profile function

Profile output

Profile output

vlisp-profiler's People

Contributors

talanc avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

vb6hobbyst7

vlisp-profiler's Issues

build/test badge

As a developer
I want to see if the current code is able to be built and test successfully
So that I know the code is ready to go

third party notices

as a good FOSS citizen
i want to show third party notices
so that i may comply with third party licenses

html report with top results

As a viewer
I want to see where my program is spending the most time
So that I can focus on those areas where time is spent

Top results include

  • Elapsed
  • Self-elapsed
  • Count (number of times hit)

installer

as a lazy user
i want a one-click install process
so that i can profile faster and use the software with ease

release v1

As a user
I want to use this software
So that I can use it

modern installer

As a fancy lazy user
I want an installer with a modern UI
So that it looks more professional

Automated installer.exe pipeline

As the main developer
I want a way to automate the building of new installers
So that I don't have to do it from my own computer every time

include samples

as a novice user of this program
i want sample programs with instructions
so that i can get the hang of the project quicker

remove 'type go!' from profiling

as a user
i do not want to type go! when i need to profile and i want it to run automatically
so that it is less steps for me to get my profiling done

--

it's required because we call out to the exe to generate the .prof file.
find a way to communicate between the lisp file and the exe

suggestions:

  • exe creates a file, script looks for that file to be created (and also looks for an error file!)
  • exe deletes a file, scripts looks for that file to be deleted
  • communicate via stdin/stdout
  • communicate via mutex or another IPC

Setup GUI

As a user
I want an easy GUI friendly way to set up VLispProfiler
So that I don't have to worry about using the command line

keep install path

as a user
i want to know if i'm re-installing the same program
so that i dont inadvertently install it in multiple locations.

see NSIS InstallDirRegKey

update readme

As a developer
I want to use this program
So that I can profile my code

prof.lsp duplicate

As a developer
I only want one prof.lsp file
So that I know which one to edit

html top results with clickable items

As a developer
I want to be able to click on an item and visit the code
So that I don't have to manually scroll and waste time

Clicking on the item goes to the affected lines.
Depends on #1

gif in readme

As a visual lisp developer
I want to see a quick demonstration of the program in action
So that I may quickly evaluate it

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.