Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
GHC
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Iterations
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Alex D
GHC
Commits
e9655493
Commit
e9655493
authored
Aug 19, 2009
by
Simon Marlow
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rename whitehole_spin to evac_collision, and update it properly
parent
68bc07fe
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
12 additions
and
6 deletions
+12
-6
rts/Stats.c
rts/Stats.c
+2
-2
rts/sm/Evac.c
rts/sm/Evac.c
+8
-2
rts/sm/GC.h
rts/sm/GC.h
+1
-1
rts/sm/Storage.c
rts/sm/Storage.c
+1
-1
No files found.
rts/Stats.c
View file @
e9655493
...
...
@@ -15,7 +15,7 @@
#include "Profiling.h"
#include "GetTime.h"
#include "sm/Storage.h"
#include "sm/GC.h" // gc_alloc_block_sync,
whitehole_spi
n
#include "sm/GC.h" // gc_alloc_block_sync,
evac_collisio
n
#if USE_PAPI
#include "Papi.h"
...
...
@@ -704,7 +704,7 @@ stat_exit(int alloc)
nat
g
,
s
;
statsPrintf
(
"gc_alloc_block_sync: %"
FMT_Word64
"
\n
"
,
gc_alloc_block_sync
.
spin
);
statsPrintf
(
"
whitehole_spin: %"
FMT_Word64
"
\n
"
,
whitehole_spi
n
);
statsPrintf
(
"
evac_collision: %"
FMT_Word64
"
\n
"
,
evac_collisio
n
);
for
(
g
=
0
;
g
<
RtsFlags
.
GcFlags
.
generations
;
g
++
)
{
for
(
s
=
0
;
s
<
generations
[
g
].
n_steps
;
s
++
)
{
statsPrintf
(
"gen[%d].steps[%d].sync_large_objects: %"
FMT_Word64
"
\n
"
,
g
,
s
,
generations
[
g
].
steps
[
s
].
sync_large_objects
.
spin
);
...
...
rts/sm/Evac.c
View file @
e9655493
...
...
@@ -25,7 +25,7 @@
#include "LdvProfile.h"
#if defined(PROF_SPIN) && defined(THREADED_RTS) && defined(PARALLEL_GC)
StgWord64
whitehole_spi
n
=
0
;
StgWord64
evac_collisio
n
=
0
;
#endif
#if defined(THREADED_RTS) && !defined(PARALLEL_GC)
...
...
@@ -115,7 +115,10 @@ copy_tag(StgClosure **p, const StgInfoTable *info,
new_info
=
(
const
StgInfoTable
*
)
cas
((
StgPtr
)
&
src
->
header
.
info
,
(
W_
)
info
,
MK_FORWARDING_PTR
(
to
));
if
(
new_info
!=
info
)
{
return
evacuate
(
p
);
// does the failed_to_evac stuff
#if defined(PROF_SPIN)
evac_collision
++
;
#endif
evacuate
(
p
);
// does the failed_to_evac stuff
}
else
{
*
p
=
TAG_CLOSURE
(
tag
,(
StgClosure
*
)
to
);
}
...
...
@@ -191,6 +194,9 @@ copyPart(StgClosure **p, const StgInfoTable *info, StgClosure *src,
new_info
=
(
const
StgInfoTable
*
)
cas
((
StgPtr
)
&
src
->
header
.
info
,
(
W_
)
info
,
MK_FORWARDING_PTR
(
to
));
if
(
new_info
!=
info
)
{
#if defined(PROF_SPIN)
evac_collision
++
;
#endif
evacuate
(
p
);
// does the failed_to_evac stuff
return
rtsFalse
;
}
else
{
...
...
rts/sm/GC.h
View file @
e9655493
...
...
@@ -42,7 +42,7 @@ extern nat mutlist_MUTVARS, mutlist_MUTARRS, mutlist_MVARS, mutlist_OTHERS;
#endif
#if defined(PROF_SPIN) && defined(THREADED_RTS)
extern
StgWord64
whitehole_spi
n
;
extern
StgWord64
evac_collisio
n
;
#endif
void
gcWorkerThread
(
Capability
*
cap
);
...
...
rts/sm/Storage.c
View file @
e9655493
...
...
@@ -253,7 +253,7 @@ initStorage( void )
#ifdef THREADED_RTS
initSpinLock
(
&
gc_alloc_block_sync
);
whitehole_spi
n
=
0
;
evac_collisio
n
=
0
;
#endif
N
=
0
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment