Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
Actor Framework
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
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
cpp-libs
Actor Framework
Commits
6717141d
Commit
6717141d
authored
Jan 09, 2012
by
neverlord
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
benchmark fix
parent
111c7a7c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
7 deletions
+12
-7
benchmarks/MixedCase.scala
benchmarks/MixedCase.scala
+12
-7
No files found.
benchmarks/MixedCase.scala
View file @
6717141d
...
...
@@ -33,18 +33,23 @@ object global {
}
class
ThreadedWorker
(
supervisor
:
Actor
)
extends
Actor
{
override
def
act
()
=
receive
{
case
Calc
(
value
)
=>
supervisor
!
Factors
(
global
.
factorize
(
value
));
act
case
Done
=>
// recursion ends
override
def
act
()
{
var
done
=
false
while
(
done
==
false
)
{
receive
{
case
Calc
(
value
)
=>
supervisor
!
Factors
(
global
.
factorize
(
value
))
case
Done
=>
done
=
true
}
}
}
}
class
ThreadedChainLink
(
next
:
Actor
)
extends
Actor
{
override
def
act
()
=
{
override
def
act
()
{
var
done
=
false
while
(
done
==
false
)
receive
{
case
Token
(
value
)
=>
next
!
Token
(
value
);
if
(
value
>
0
)
done
=
true
case
Token
(
value
)
=>
next
!
Token
(
value
);
if
(
value
==
0
)
done
=
true
}
}
}
...
...
@@ -77,7 +82,7 @@ class ThreadedChainMaster(supervisor: Actor) extends Actor {
class
ThreadedSupervisor
(
numMessages
:
Int
)
extends
Actor
{
override
def
act
()
=
for
(
_
<-
0
until
numMessages
)
{
receive
{
case
Factors
(
f
)
=>
global
.
checkFactors
(
f
)
;
case
Factors
(
f
)
=>
global
.
checkFactors
(
f
)
case
MasterExited
=>
}
}
...
...
@@ -222,7 +227,7 @@ object MixedCase {
val
numMessages
=
(
numRings
+
(
numRings
*
repetitions
))
val
impl
=
args
(
0
)
if
(
impl
==
"threaded"
)
{
//System.setProperty("actors.maxPoolSize", (
(11
* ringSize) + 10).toString)
//System.setProperty("actors.maxPoolSize", (
numRings + (numRings
* ringSize) + 10).toString)
val
s
=
(
new
ThreadedSupervisor
(
numMessages
)).
start
for
(
_
<-
0
until
numRings
)
(
new
ThreadedChainMaster
(
s
)).
start
!
initMsg
...
...
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