1. 20 Jan, 2013 1 commit
    • Glenn Morris's avatar
      profiler.el tweaks · 15df6fa4
      Glenn Morris authored
      * profiler.el (profiler-running-p): New function.
      (profiler-cpu-profile): Use profiler-running-p.
      (profiler-report-mode-map): Add some more menu entries.
      15df6fa4
  2. 19 Jan, 2013 1 commit
  3. 01 Jan, 2013 1 commit
  4. 20 Nov, 2012 1 commit
    • Glenn Morris's avatar
      Add a menu for profiler report mode · b0636be7
      Glenn Morris authored
      * lisp/profiler.el (profiler-report-mode-map): Add a menu.
      No need to bind `q' because we derive from special-mode.
      (profiler-report-find-entry): Handle calls from the menu-bar.
      b0636be7
  5. 27 Oct, 2012 1 commit
  6. 06 Oct, 2012 1 commit
    • Glenn Morris's avatar
      Add missing :version tags · d1a1c7e6
      Glenn Morris authored
      * profiler.el (profiler): Add missing group :version tag.
      * avoid.el (mouse-avoidance-banish-position):
      * proced.el (proced-renice-command):
      * calc/calc.el (calc-ensure-consistent-units):
      * calendar/icalendar.el (icalendar-import-format-uid):
      * net/tramp.el (tramp-save-ad-hoc-proxies):
      * progmodes/bug-reference.el (bug-reference-bug-regexp):
      * progmodes/flymake.el (flymake-error-bitmap)
      (flymake-warning-bitmap, flymake-fringe-indicator-position):
      * progmodes/sh-script.el (sh-indent-after-continuation):
      * progmodes/verilog-mode.el (verilog-auto-template-warn-unused)
      (verilog-before-save-font-hook, verilog-after-save-font-hook):
      * progmodes/vhdl-mode.el (vhdl-makefile-default-targets)
      (vhdl-array-index-record-field-in-sensitivity-list)
      (vhdl-indent-comment-like-next-code-line):
      * textmodes/reftex-vars.el (reftex-ref-style-alist)
      (reftex-ref-macro-prompt, reftex-ref-style-default-list)
      (reftex-cite-key-separator, reftex-create-bibtex-header)
      (reftex-create-bibtex-footer):
      * textmodes/rst.el (rst-new-adornment-down, rst-indent-field)
      (rst-indent-literal-normal, rst-indent-literal-minimized)
      (rst-indent-comment): Add missing custom :version tags.
      
      * cedet/semantic/complete.el (semantic-displayor-tooltip-mode)
      (semantic-displayor-tooltip-initial-max-tags)
      (semantic-displayor-tooltip-max-tags): Add missing custom :version tags.
      * cedet/ede/linux.el (project-linux): Add missing group :version tag.
      
      * cedet/semantic/complete.el (semantic-displayor-tooltip-max-tags): Doc fix.
      
      * erc/erc.el (erc-lurker):
      * erc/erc-desktop-notifications.el (erc-notifications):
      Add missing group :version tags.
      
      * gnus/gnus-notifications.el (gnus-notifications):
      Add missing group :version tag.
      * gnus/gnus-msg.el (gnus-gcc-pre-body-encode-hook)
      (gnus-gcc-post-body-encode-hook):
      * gnus/gnus-sync.el (gnus-sync-lesync-name)
      (gnus-sync-lesync-install-topics): Add missing custom :version tags.
      d1a1c7e6
  7. 05 Oct, 2012 1 commit
  8. 02 Oct, 2012 1 commit
    • Paul Eggert's avatar
      Count overruns when profiling; change units to ns. · b3ecad33
      Paul Eggert authored
      * lisp/profiler.el (profiler-sampling-interval): Change units
      from ms to ns, multiplying the default by 1000000 so that
      it remains 1 ms.
      (profiler-report-cpu-line-format): Give enough room for
      the maximum counters on 64-bit hosts.
      (profiler-report-render-calltree-1): Call them "CPU samples",
      not "Time (ms)", since they are not milliseconds now (and
      never really were).
      * src/profiler.c (handle_profiler_signal): Count sampling intervals, not ms.
      Give extra weight to samples after overruns, to attempt to count
      the time more accurately.
      (setup_cpu_timer): Change sampling interval units from ms to ns, since
      the underlying primitives nominally do ns.
      (Fprofiler_cpu_start): Document the change.  Mention that
      the sampling intervals are only approximate.
      b3ecad33
  9. 01 Oct, 2012 1 commit
  10. 30 Sep, 2012 1 commit
    • Tomohiro Matsuyama's avatar
      * profiler.el (profiler-sampling-interval): Rename from · c22bac2c
      Tomohiro Matsuyama authored
      profiler-sample-interval.
      (profiler-sampling-interval): Default to 10.
      (profiler-find-profile): New command (was profiler-find-log).
      (profiler-find-profile-other-window): New command.
      (profiler-find-profile-other-frame): New command.
      (profiler-profile): Introduce API-level data structure.
      c22bac2c
  11. 26 Sep, 2012 1 commit
    • Stefan Monnier's avatar
      * lisp/profiler.el (profiler-start): Don't prompt for choice when there · 234148bf
      Stefan Monnier authored
      isn't any.
      (profiler-stop): Use new semantics of profiler-*-stop.
      (profiler-reset, profiler--report-cpu): Don't signal an error if the
      cpu profiler is not available.
      * src/profiler.c (Fprofiler_cpu_stop, Fprofiler_memory_stop):
      Return whether the profiler was running, instead of signaling an error
      if it wasn't.
      234148bf
  12. 25 Sep, 2012 1 commit
  13. 24 Sep, 2012 2 commits
    • Stefan Monnier's avatar
      Try to let it compile on other platforms · ad942b63
      Stefan Monnier authored
      * src/profiler.c (evict_lower_half): Fix typo.
      (PROFILER_CPU_SUPPORT): Check and define if cpu-profiler is supported.
      Don't compile the cpu-profiler code, if not supported.
      (malloc_probe): Presume memory_log is non-nil.
      (syms_of_profiler): Don't defsubr functions when they aren't defined.
      * src/lisp.h (sample_profiler_running, gc_probe): Don't declare.
      ad942b63
    • Stefan Monnier's avatar
      Rewrite sampler to use Elisp hash-tables. · 3d80c99f
      Stefan Monnier authored
      * src/profiler.c: Remove filtering functionality.
      (is_in_trace, Qgc): Remove vars.
      (make_log, record_backtrace, Fsample_profiler_log):
      Rewrite, using Elisp hash-tables.
      (approximate_median, evict_lower_half): New functions.
      (cpu_log): Rename from sample_log.
      (cpu_gc_count): New var.
      (Fsample_profiler_reset, Fmemory_profiler_reset): Remove.
      (sigprof_handler): Add count to cpu_gc_count during GC, detected via
      backtrace_list.
      (block_sigprof, unblock_sigprof): Remove.
      (gc_probe, mark_profiler): Remove functions.
      (syms_of_profiler): Staticpro cpu_log and memory_log.
      
      * lisp/profiler.el (profiler-sample-interval): Move before first use.
      Change default to 1ms.
      (profiler-entry=, profiler-backtrace-reverse, profiler-log-fixup-slot)
      (profiler-calltree-elapsed<, profiler-calltree-elapsed>): Remove functions.
      (profiler-entry-format): Don't use type-of.
      (profiler-slot, profiler-log): Remove structs.
      (profiler-log-timestamp, profiler-log-type, profiler-log-diff-p):
      Redefine for new log representation.
      (profiler-log-diff, profiler-log-fixup, profiler-calltree-build-1):
      Rewrite for new log representation.
      (profiler-calltree): Remove `elapsed' fields.
      (profiler-calltree-count<, profiler-report-make-entry-part):
      Remove gc special case.
      (profiler-calltree-find): Use equal.
      (profiler-calltree-walk): Remove `args'; rely on closures instead.
      (profiler-calltree-compute-percentages-1): Remove; inlined.
      (profiler-calltree-compute-percentages): Simplify.
      (profiler-report-log, profiler-report-reversed)
      (profiler-report-order): Use defvar-local.
      (profiler-report-line-format): Remove `elapsed', do a bit of CSE.
      (profiler-report-mode-map): Remove up/down bindings.
      (profiler-report-make-buffer-name): Simplify by CSE.
      (profiler-report-mode): Remove redundant code.
      (profiler-report-expand-entry, profiler-report-collapse-entry):
      Use inhibit-read-only.
      (profiler-report-render-calltree-1): Simplify by CSE.
      (profiler-reset): Rewrite for new subroutines.
      (profiler--report-cpu): Rename from sample-profiler-report.
      (profiler--report-memory): Rename from memory-profiler-report.
      
      * src/alloc.c (Fgarbage_collect): Record itself in backtrace_list.
      Don't set is_in_trace any more.  Don't call mark_profiler.
      Only call gc_probe for the memory profiler.
      (syms_of_alloc): Define Qautomatic_gc.
      
      * src/lisp.h (SXHASH_COMBINE): Move back to...
      * src/fns.c (SXHASH_COMBINE): ...here.
      
      * src/xdisp.c (Qautomatic_redisplay): New constant.
      (redisplay_internal): Record itself in backtrace_list.
      (syms_of_xdisp): Define Qautomatic_redisplay.
      
      * .dir-locals.el (indent-tabs-mode): Remove personal preference.
      3d80c99f
  14. 23 Aug, 2012 1 commit
  15. 22 Aug, 2012 5 commits