Skip to content

Instantly share code, notes, and snippets.

@aalexandrov
Last active September 2, 2015 13:17
Show Gist options
  • Save aalexandrov/bbafdccb7183d07142a0 to your computer and use it in GitHub Desktop.
Save aalexandrov/bbafdccb7183d07142a0 to your computer and use it in GitHub Desktop.
ExperimentSequence with multiple parameters example
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- Preamble: Data Generators, Data Sets, Outputs, Experiments -->
<!--************************************************************************
* Suites
*************************************************************************-->
<!-- suite for scale-out on 5, 10, and 20 nodes -->
<bean id="kmeans.various" class="org.peelframework.core.beans.experiment.ExperimentSuite">
<constructor-arg name="experiments">
<bean class="org.peelframework.core.beans.experiment.ExperimentSequence">
<constructor-arg name="parameters">
<bean class="org.peelframework.core.beans.experiment.ExperimentSequence.CrossedParameters">
<constructor-arg name="parameters">
<list>
<bean class="org.peelframework.core.beans.experiment.ExperimentSequence.Parameter">
<constructor-arg name="name" value="topXXX" />
<constructor-arg name="vals">
<list>
<value>top005</value>
<value>top010</value>
<value>top020</value>
</list>
</constructor-arg>
</bean>
<bean class="org.peelframework.core.beans.experiment.ExperimentSequence.Parameter">
<constructor-arg name="name" value="numberOfPoints" />
<constructor-arg name="vals">
<list>
<value>10000000</value>
<value>40000000</value>
<value>80000000</value>
</list>
</constructor-arg>
</bean>
<bean class="org.peelframework.core.beans.experiment.ExperimentSequence.Parameter">
<constructor-arg name="name" value="numberOfCenters" />
<constructor-arg name="vals">
<list>
<value>3</value>
<value>5</value>
<value>10</value>
</list>
</constructor-arg>
</bean>
</list>
</constructor-arg>
</bean>
</constructor-arg>
<constructor-arg name="prototypes">
<list value-type="org.peelframework.core.beans.experiment.Experiment">
<bean parent="experiment.flink.wordcount">
<constructor-arg name="name" value="wordcount.flink.slaves-__topXXX__.points-__numberOfPoints__.centers-__numberOfCenters__"/>
<constructor-arg name="inputs">
<set>
<ref bean="dataset.points.generated" />
<ref bean="dataset.centers.generated" />
</set>
</constructor-arg>
<constructor-arg name="config">
<value><![CDATA[
system.default.config.slaves = ${env.slaves.__topXXX__.hosts}
system.default.config.parallelism.total = ${env.slaves.__topXXX__.total.parallelism}
datagen.dictionary.dize = 10000
datagen.tuples.per.task = 10000000 # ~ 100 MB
datagen.number.of.points = __numberOfPoints__
datagen.number.of.centers = __numberOfCenters__
]]></value>
</constructor-arg>
</bean>
</list>
</constructor-arg>
</bean>
</constructor-arg>
</bean>
</beans>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment