changeset 2832:99d169b25fbf

Precised profile stuff
author nick
date Sun, 11 Nov 2001 14:41:19 +0000
parents 7746bf29000a
children 1b6c207c0410
files Makefile my_profile.c my_profile.h
diffstat 3 files changed, 47 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Sun Nov 11 13:48:11 2001 +0000
+++ b/Makefile	Sun Nov 11 14:41:19 2001 +0000
@@ -24,7 +24,7 @@
 SRCS_MENCODER = divx4_vbr.c mencoder.c libvo/aclib.c libvo/img_format.c ima4.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c dec_audio.c dec_video.c msvidc.c codec-cfg.c cfgparser.c
 OBJS_MENCODER = $(SRCS_MENCODER:.c=.o)
 
-SRCS_MPLAYER = mplayer.c ima4.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c find_sub.c dec_audio.c dec_video.c msvidc.c codec-cfg.c subreader.c lirc_mp.c cfgparser.c mixer.c spudec.c
+SRCS_MPLAYER = mplayer.c ima4.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c find_sub.c dec_audio.c dec_video.c msvidc.c codec-cfg.c subreader.c lirc_mp.c cfgparser.c mixer.c spudec.c my_profile.c
 OBJS_MPLAYER = $(SRCS_MPLAYER:.c=.o)
 CFLAGS = $(OPTFLAGS) -Ilibmpdemux -Iloader -Ilibvo $(EXTRA_INC) $(MADLIB_INC) # -Wall
 A_LIBS = -Lmp3lib -lMP3 -Llibac3 -lac3 $(ALSA_LIB) $(ESD_LIB) $(MADLIB_LIB) $(SGI_AUDIO_LIB)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/my_profile.c	Sun Nov 11 14:41:19 2001 +0000
@@ -0,0 +1,13 @@
+/*
+ *  my_profile.c
+ *
+ *	Copyright (C) Nick Kurshev <nickols_k@mail.ru> - Oct 2001
+ *
+ *  You can redistribute this file under terms and conditions
+ *  of GNU General Public licence v2.
+ *  This file is partly based on vbetest.c from lrmi distributive.
+ */
+ 
+#include "my_profile.h"
+
+unsigned long long int my_profile_start,my_profile_end,my_profile_total=0ULL;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/my_profile.h	Sun Nov 11 14:41:19 2001 +0000
@@ -0,0 +1,33 @@
+/*
+ *  my_profile.h
+ *
+ *	Copyright (C) Nick Kurshev <nickols_k@mail.ru> - Oct 2001
+ *
+ *  You can redistribute this file under terms and conditions
+ *  of GNU General Public licence v2.
+ *  This file is partly based on vbetest.c from lrmi distributive.
+ */
+#ifndef MY_PROFILE_INC
+#define MY_PROFILE_INC
+
+extern unsigned long long int my_profile_start,my_profile_end,my_profile_total;
+
+#if defined ( ENABLE_PROFILE ) && defined ( ARCH_X86 )
+static inline unsigned long long int read_tsc( void )
+{
+  unsigned long long int retval;
+  __asm __volatile ("rdtsc":"=A"(retval)::"memory");
+  return retval;
+}
+
+#define PROFILE_START()			(my_profile_start=read_tsc())
+#define PROFILE_END(your_message)	{ my_profile_end=read_tsc(); my_profile_total+=my_profile_end - my_profile_start; printf(your_message" current=%llu total=%llu\n\t",my_profile_end-my_profile_start,my_profile_total); }
+#else
+#define PROFILE_INIT()
+#define PROFILE_START()
+#define PROFILE_END(your_message)
+#endif
+
+
+
+#endif
\ No newline at end of file