summaryrefslogtreecommitdiff
path: root/benchmarks/GCbench.c
AgeCommit message (Collapse)Author
2008-12-18Add vg_ prefix to the (hopefully) remaining viengoos symbols.Neal H. Walfield
2008-12-18 Neal H. Walfield <neal@gnu.org> * viengoos/activity.h (struct activity_memory_policy): Rename from this... (struct vg_activity_memory_policy): ... to this. Update users. (struct activity_policy): Rename from this... (struct vg_activity_policy): ... to this. Update users. (ACTIVITY_STATS_PERIODS): Rename from this... (VG_ACTIVITY_STATS_PERIODS): ... to this. Update users. (struct activity_stats): Rename from this... (struct vg_activity_stats): ... to this. Update users. (struct activity_info): Rename from this... (struct vg_activity_info): ... to this. Update users. * viengoos/addr.h (struct addr): Rename from this... (struct vg_addr): ... to this. Update users. * viengoos/cap.h (struct object_policy): Rename from this... (struct vg_object_policy): ... to this. Update users. (struct object_name): Rename from this... (struct vg_object_name): ... to this. Update users. (struct object): Rename from this... (struct vg_object): ... to this. Update users. * viengoos/folio.h (struct folio_policy): Rename from this... (struct vg_folio_policy): ... to this. Update users. (struct folio): Rename for this... (struct vg_folio): ... to this. Update users. * viengoos/thread.h (HURD_EXREGS_SET_UTCB): Rename from this... (VG_EXREGS_SET_UTCB): ... to this. Update users. (HURD_EXREGS_SET_EXCEPTION_MESSENGER): Rename from this... (VG_EXREGS_SET_EXCEPTION_MESSENGER): ... to this. Update users. (HURD_EXREGS_SET_ASPACE): Rename from this... (VG_EXREGS_SET_ASPACE): ... to this. Update users. (HURD_EXREGS_SET_ACTIVITY): Rename from this... (VG_EXREGS_SET_ACTIVITY): ... to this. Update users. (HURD_EXREGS_SET_SP): Rename from this... (VG_EXREGS_SET_SP): ... to this. Update users. (HURD_EXREGS_SET_IP): Rename from this... (VG_EXREGS_SET_IP): ... to this. Update users. (HURD_EXREGS_SET_SP_IP): Rename from this... (VG_EXREGS_SET_SP_IP): ... to this. Update users. (HURD_EXREGS_SET_EFLAGS): Rename from this... (VG_EXREGS_SET_EFLAGS): ... to this. Update users. (HURD_EXREGS_SET_USER_HANDLE): Rename from this... (VG_EXREGS_SET_USER_HANDLE): ... to this. Update users. (HURD_EXREGS_SET_REGS): Rename from this... (VG_EXREGS_SET_REGS): ... to this. Update users. (HURD_EXREGS_GET_REGS): Rename from this... (VG_EXREGS_GET_REGS): ... to this. Update users. (HURD_EXREGS_START): Rename from this... (VG_EXREGS_START): ... to this. Update users. (HURD_EXREGS_STOP): Rename from this... (VG_EXREGS_STOP): ... to this. Update users. (HURD_EXREGS_ABORT_SEND): Rename from this... (VG_EXREGS_ABORT_SEND): ... to this. Update users. (HURD_EXREGS_ABORT_RECEIVE): Rename from this... (VG_EXREGS_ABORT_RECEIVE): ... to this. Update users. (HURD_EXREGS_ABORT_IPC): Rename from this... (VG_EXREGS_ABORT_IPC): ... to this. Update users. (struct hurd_thread_exregs_in): Rename form this... (struct vg_thread_exregs_in): ... to this. Update users. (struct hurd_thread_exregs_out): Rename form this... (struct vg_thread_exregs_out): ... to this. Update users. (RPC_STUB_PREFIX): Define to vg_activation. Update users. (RPC_ID_PREFIX): Define to VG_ACTIVATION. Update users. (ACTIVATION_fault): Rename from this... (VG_ACTIVATION_fault): ... to this. Update users.
2008-12-17Replace RPC rm prefix with vg.Neal H. Walfield
2008-12-17 Neal H. Walfield <neal@gnu.org> * viengoos/activity.h (RM_activity_policy): Rename from this... (VG_activity_policy): ... to this. Update users. (RM_activity_info): Rename from this... (VG_activity_info): ... to this. Update users. (RPC_STUB_PREFIX): Define to vg. (RPC_ID_PREFIX): Define to VG. * viengoos/cap.h (RM_cap_copy): Rename from this... (VG_cap_copy): ... to this. Update users. (RM_cap_rubout): Rename from this... (VG_cap_rubout): ... to this. Update users. (RM_cap_read): Rename from this... (VG_cap_read): ... to this. Update users. (RM_object_discarded_clear): Rename from this... (VG_object_discarded_clear): ... to this. Update users. (RM_object_discard): Rename from this... (VG_object_discard): ... to this. Update users. (RM_object_status): Rename from this... (VG_object_status): ... to this. Update users. (RM_object_reply_on_destruction): Rename from this... (VG_object_reply_on_destruction): ... to this. Update users. (RM_object_name): Rename from this... (VG_object_name): ... to this. Update users. (RPC_STUB_PREFIX): Define to vg. (RPC_ID_PREFIX): Define to VG. * viengoos/folio.h (RM_folio_alloc): Rename from this... (VG_folio_alloc): ... to this. Update users. (RM_folio_free): Rename from this... (Vg_folio_free): ... to this. Update users. (RM_folio_object_alloc): Rename from this... (VG_folio_object_alloc): ... to this. Update users. (RM_folio_policy): Rename from this... (VG_folio_policy): ... to this. Update users. (RPC_STUB_PREFIX): Define to vg. (RPC_ID_PREFIX): Define to VG. * viengoos/futex.h (RM_futex): Rename from this... (VG_futex): ... to this. Update users. (RPC_STUB_PREFIX): Define to vg. (RPC_ID_PREFIX): Define to VG. * viengoos/misc.h (RM_write): Rename from this... (VG_write): ... to this. Update users. (RM_read): Rename from this... (VG_read): ... to this. Update users. (RM_as_dump): Rename from this... (VG_as_dump): ... to this. Update users. (RM_fault): Rename from this... (VG_fault): ... to this. Update users. (RPC_STUB_PREFIX): Define to vg. (RPC_ID_PREFIX): Define to VG. * viengoos/thread.h (RM_thread_exregs): Rename from this... (RM_thread_exregs): ... to this. Update users. (RM_thread_id): Rename from this... (RM_thread_id): ... to this. Update users. (RM_thread_activation_collect): Rename from this... (RM_thread_activation_collect): ... to this. Update users. (RPC_STUB_PREFIX): Define to vg. (RPC_ID_PREFIX): Define to VG.
2008-12-17Add a "vg_" to public viengoos identifiers.Neal H. Walfield
2008-12-17 Neal H. Walfield <neal@gnu.org> * viengoos/activity.h: Add a "vg_" to public viengoos identifiers. Update users. * viengoos/addr-trans.h: Likewise. * viengoos/addr.h: Likewise. * viengoos/cap.h: Likewise. * viengoos/folio.h: Likewise. * viengoos/futex.h: Likewise. * viengoos/rpc.h: Likewise. * viengoos/thread.h: Likewise.
2008-12-17Move viengoos header files to libviengoos.Neal H. Walfield
/ 2008-12-17 Neal H. Walfield <neal@gnu.org> * libviengoos: New directory. * Makefile.am (SUBDIRS): Add libviengoos. * configure.ac: Include libviengoos/headers.m4. Generate libviengoos/Makefile. hurd/ 2008-12-17 Neal H. Walfield <neal@gnu.org> * activity.h: Move to ../libviengoos/viengoos. Update references. * addr-trans.h: Likewise. * addr.h: Likewise. * cap.h: Likewise. * folio.h: Likewise. * futex.h: Likewise. * ipc.h: Likewise. * message.h: Likewise. * messenger.h: Likewise. * rpc.h: Likewise. * thread.h: Move viengoos specific bits... * ../libviengoos/viengoos/thread.h: ... to this new file. * thread.h (struct hurd_utcb): New structure. * exceptions.h (hurd_utcb): Use a struct hurd_utcb *, not a struct vg_utcb *. Update users. (hurd_activation_state_alloc): Likewise. (hurd_activation_state_free): Likewise. (hurd_activation_handler_activated): Likewise. (hurd_activation_handler_normal): Likewise. * t-addr-trans.c: Move to ../libviengoos. * t-addr.c: Likewise. * t-rpc.c: Likewise. * Makefile.am (TESTS, check_PROGRAMS, t_addr_CPPFLAGS) (t_addr_SOURCES, t_addr_trans_CPPFLAGS, t_addr_trans_SOURCES) (t_rpc_CPPFLAGS, t_rpc_SOURCES): Move from this file... * ../libviengoos/Makefile.am. * Makefile.am (includehurd_HEADERS): Don't mention activity.h, addr-trans.h, addr.h, cap.h, folio.h, futex.h, ipc.h, message.h or messenger.h. * headers.m4: Don't create a link to hurd/addr.h, hurd/addr-trans.h, hurd/cap.h, hurd/folio.h, hurd/rpc.h, hurd/activity.h, hurd/futex.h, hurd/message.h, hurd/messenger.h or hurd/ipc.h. libviengoos/ 2008-12-17 Neal H. Walfield <neal@gnu.org> * Makefile.am: New file. * headers.m4: Likewise. * t-addr-trans.c: Move from ../hurd. * t-addr.c: Likewise. * t-rpc.c: Likewise. * viengoos.h: Likewise. * viengoos/activity.h: Likewise. * viengoos/addr-trans.h: Likewise. * viengoos/addr.h: Likewise. * viengoos/cap.h: Likewise. * viengoos/folio.h: Likewise. * viengoos/futex.h: Likewise. * viengoos/ipc.h: Likewise. * viengoos/message.h: Likewise. * viengoos/messenger.h: Likewise. * viengoos/rpc.h: Likewise. * viengoos/misc.h: Moved from ../viengoos/rm.h. * viengoos/thread.h: New file split from ../hurd/thread.h. libpthread/ 2008-12-17 Neal H. Walfield <neal@gnu.org> * Makefile.am: New file. * headers.m4: Likewise. * t-addr-trans.c: Move from ../hurd. * t-addr.c: Likewise. * t-rpc.c: Likewise. * viengoos.h: Likewise. * viengoos/activity.h: Likewise. * viengoos/addr-trans.h: Likewise. * viengoos/addr.h: Likewise. * viengoos/cap.h: Likewise. * viengoos/folio.h: Likewise. * viengoos/futex.h: Likewise. * viengoos/ipc.h: Likewise. * viengoos/message.h: Likewise. * viengoos/messenger.h: Likewise. * viengoos/rpc.h: Likewise. * viengoos/misc.h: Moved from ../viengoos/rm.h. * viengoos/thread.h: New file split from ../hurd/thread.h. viengoos/ 2008-12-17 Neal H. Walfield <neal@gnu.org> * rm.h: Move from here... * ../libviengoos/viengoos/misc.h: ... to here. Update users. * headers.m4: Don't link rm.h to hurd/rm.h. * Makefile.am (viengoos_SOURCES): Remove rm.h.
2008-11-04Return the number of priority bits to 7.Neal H. Walfield
hurd/ 2008-11-04 Neal H. Walfield <neal@gnu.org> * cap.h (OBJECT_PRIORITY_BITS): Change to 7. (OBJECT_PRIORITY_LEVELS): Define. (OBJECT_PRIORITY_LRU): Don't define. Update users. (struct object_policy): Remove field pad0. Change to a uint8_t. (OBJECT_POLICY): Update. ruth/ 2008-11-04 Neal H. Walfield <neal@gnu.org> * ruth.c (main): Use OBJECT_PRIORITY_DEFAULT, not OBJECT_PRIORITY_LRU. benchmarks/ 2008-11-04 Neal H. Walfield <neal@gnu.org> * activity-distribution.c (main): Use OBJECT_PRIORITY_DEFAULT, not OBJECT_PRIORITY_LRU. * GCbench.c (helper): Likewise.
2008-06-27hurd/neal
2008-06-27 Neal H. Walfield <neal@gnu.org> * activity.h (RM_activity_stats): Don't define. (RM_activity_info): Replace with this. (struct activity_stats): Add field pressure_local. Make field pressure an 8 bit integer. (struct activity_stats_buffer): Remove structure. (struct activity_info): Replace with this structure. (activity_info_stats): Define. (activity_info_pressure): Likewise. (activity_stats): Remove method. (activity_info): Replace with this. viengoos/ 2008-06-27 Neal H. Walfield <neal@gnu.org> * activity.h (struct activity): Add fields free_bad_karma, free_goal, free_allocations and free_initial_allocation. * rm.h (rm_method_id_string): Replace RM_activity_stats handling with RM_activity_info handling. * thread.h (THREAD_WAIT_STATS): Remove. (THREAD_WAIT_ACTIVITY_INFO): Replace with this. (struct thread): Add field wait_reason_arg2. * ager.c (update_stats): Account for local pressure when calculating availability. Don't use activity_stats to inform threads of new statistics but activity_info. * object.c (object_desc_claim): Adjust the activity's FREE_GOAL, FREE_ALLOCATIONS, and FRAMES_EXCLUDED fields as appropriate. * pager.c (pager_collect): When selecting a victim, don't include an activity's excluded frames in its allocation. Don't even consider activities for which FREE_ALLOCATIONS is non-zero. Having selected a victim, don't increase the pressure do drastically. Update the local pressure. Having selected a victim from which to revoke pages, send any waiting threads a message to free memory. If VICTIM->FREE_BAD_KARMA is 0, assume that the memory will be freed and give the activity 100 claims to do it. If the activity has bad karma, decrease it by one. * server.c (server_loop): Replace activity_stats implementation with implementation appropriate for activity_info. hieronymus/ 2008-06-27 Neal H. Walfield <neal@gnu.org> * hieronymus.c (do_gather_stats): Change to use activity_info instead of activity_stats. (main): Introduce code to delay process creation. ruth/ 2008-06-27 Neal H. Walfield <neal@gnu.org> * ruth.c (main): Update to use activity_info instead of activity_stats. benchmarks/ 2008-06-27 Neal H. Walfield <neal@gnu.org> * shared-memory-distribution.c (main): Update to use activity_info instead of activity_status. * activity-distribution.c (main): Likewise. * GCbench.c: Include <stdint.h> and <stdbool.h>. (now): New function. (struct stats): Add fields time, gcs and iter. (have_a_hog): New variable. (mem_hog) [__gnu_hurd_viengoos__]: Rename from this... (helper) [__gnu_hurd_viengoos__]: ... to this. Use activity_info, not activity_stats. Gather more data. (helper) [! __gnu_hurd_viengoos__]: New function. (tid): Rename from this... (helper_tid): ... to this. (helper_fork) [__gnu_hurd_viengoos__]: Name activities. (main): Improve output. benchmarks/boehm-gc/ 2008-06-27 Neal H. Walfield <neal@gnu.org> * patches/05-viengoos-scheduler.patch: Update to use activity_info in place of activity_stats. Listen for pressure messages and act appropriately. Tighten adaptive code. Improve profiling code.
2008-06-23benchmarks/boehm-gc/neal
2008-06-23 Neal H. Walfield <neal@gnu.org> * patches/05-viengoos-scheduler.patch: New file. * Makefile.am (patch_files): Add 05-viengoos-scheduler.patch. benchmarks/ 2008-06-23 Neal H. Walfield <neal@gnu.org> * GCbench.c (struct stats) [__gnu_hurd_viengoos__]: New structure. [__gnu_hurd_viengoos__] Include <hurd/storage.h>, <hurd/cap.h>, <hurd/activity.h>, <pthread.h>, <hurd/anonymous.h> and <string.h>. (done) [__gnu_hurd_viengoos__]: New variable. (gc_activity) [__gnu_hurd_viengoos__]: Likewise. (hog_activity) [__gnu_hurd_viengoos__]: Likewise. (mem_hog) [__gnu_hurd_viengoos__]: New function. (mem_hog_fork) [__gnu_hurd_viengoos__]: Likewise. (main) [__gnu_hurd_viengoos__]: Call mem_hog_fork. Dump the statistics.
2008-06-182008-06-18 Neal H. Walfield <neal@gnu.org>neal
* Makefile.am (boot_PROGRAMS): Add gcbench. (gcbench_CPPFLAGS): New variable. (gcbench_CPPFLAGS): Likewise. (gcbench_CPPFLAGS): Likewise. (gcbench_CPPFLAGS): Likewise. (gcbench_CPPFLAGS): Likewise.