public PoolAddingSimConfig(GetTargetShareHandler targetHandler)
        {
            Difficulty = 1888786;
            MaxSimulationDay = 520;
            MaxSimulationRound = 150;
            InitialSimulationSpeedUp = 120000;

            Servers = new Dictionary<string, PoolServer>();
            _serversToAdd = new PoolServer[]
                                {
                                    new PoolServer("smpps", PoolType.Smpps, 100, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal1", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal2", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal3", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal4", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal5", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal6", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal7", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal8", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal9", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                    new PoolServer("ideal10", PoolType.Prop, 1000, 0, 0.0f, targetHandler),
                                };

            MaxSimulationGeneration = _serversToAdd.Length-1;
        }
Beispiel #2
0
        public PoolServer(string poolName, PoolType type, int speed, int delaySec, double rejectPercent, GetTargetShareHandler handler)
        {
            _rnd = new MersenneTwister((uint)DateTime.Now.Ticks);
            Round = 1;
            PoolName = poolName;
            Type = type;
            GHashSpeed = speed;
            DelaySec = delaySec;
            GetNextShare = handler;
            RejectPercentile = rejectPercent;
            CurrentRealShare = 0;
            MyValidShare = 0;
            MyLostShare = 0;
            TotalScore = 0;
            MyScore = 0;

            MyTotalProfit = 0;
            MyTotalValidShare = 0;
            MyTotalShare = 0;

            BaseProgress = 0;
            PenaltyFactor = 1.0f;

            //            Initialize(initialProgress);
        }
Beispiel #3
0
        public BasicSimConfig(GetTargetShareHandler targetHandler)
        {
            Difficulty = 1888786;
            MaxSimulationDay = 520;
            MaxSimulationRound = 20;
            MaxSimulationGeneration = 73;
            InitialSimulationSpeedUp = 120000;

            Servers = new Dictionary<string, PoolServer>();
            Servers.Add("ideal", new PoolServer("ideal", PoolType.Prop, 1000, 0, 0.0f, targetHandler));
            //Servers.Add("mtred", new PoolServer("mtred", PoolType.Prop, 350, 300, 8.18f, targetHandler));
            //Servers.Add("polmine", new PoolServer("polmine", PoolType.Prop, 130, 300, 6.7f, targetHandler));
            //Servers.Add("bitclockers", new PoolServer("bitclockers", PoolType.Prop, 233, 60, 5.0f, targetHandler));
            //Servers.Add("rfcpool", new PoolServer("rfcpool", PoolType.Prop, 90, 60, 2.1f, targetHandler));
            //Servers.Add("triplemining", new PoolServer("triplemining", PoolType.Prop, 72, 60, 7.6f, targetHandler));
            //Servers.Add("ozco", new PoolServer("ozco", PoolType.Prop, 122, 60, 8.52f, targetHandler));
            //Servers.Add("nofeemining", new PoolServer("nofeemining", PoolType.Prop, 30, 60, 3.5f, targetHandler));
            //Servers.Add("poolmunity", new PoolServer("poolmunity", PoolType.Prop, 10, 60, 2.26f, targetHandler));
            //Servers.Add("bclc", new PoolServer("bclc", PoolType.Prop, 500, 1800, 8.1f, targetHandler));
            //_servers.Add("mini-1", new PoolServer("mini-1", PoolType.Prop, 8, -1, 60, 5.0f, GetNextTarget));
            //_servers.Add("mini-2", new PoolServer("mini-2", PoolType.Prop, 8, -1, 60, 5.0f, GetNextTarget));

            //_servers.Add("tiny-1", new PoolServer("tiny-1", PoolType.Prop, 2, -1, 60, 5.0f, GetNextTarget));
            //_servers.Add("tiny-2", new PoolServer("tiny-2", PoolType.Prop, 2, -1, 60, 5.0f, GetNextTarget));
            //_servers.Add("tiny-3", new PoolServer("tiny-3", PoolType.Prop, 2, -1, 60, 5.0f, GetNextTarget));
            //_servers.Add("tiny-4", new PoolServer("tiny-4", PoolType.Prop, 2, -1, 60, 5.0f, GetNextTarget));

            //_servers.Add("slush", new PoolServer("slush", PoolType.Score, 2000, -1, 60, 8.13f, GetNextTarget));
            //_servers.Add("mineco.in", new PoolServer("mineco.in", PoolType.Pplns, 150, -1, 60, 7.34f, GetNextTarget));
            Servers.Add("smpps", new PoolServer("smpps", PoolType.Smpps, 20, 0, 0.0f, targetHandler));

            var columns = new List<string> {"Total Eff"};
            var rows = new List<string>();
            for(int g=1;g<=MaxSimulationGeneration;++g)
            {
                var threshold = 0.235f + 0.005f*g;
                rows.Add(threshold.ToString());
            }
            _statSummary = new StatSummary("minRS", columns, rows);
        }
Beispiel #4
0
        public BclcTest(GetTargetShareHandler targetHandler)
        {
            Difficulty = 1888786;
            MaxSimulationDay = 520;
            MaxSimulationRound = 150;
            InitialSimulationSpeedUp = 120000;

            Servers = new Dictionary<string, PoolServer>();
            //Servers.Add("ideal1", new PoolServer("ideal1", PoolType.Prop, 1000, 0, 0.0f, targetHandler));
            //Servers.Add("ideal2", new PoolServer("ideal2", PoolType.Prop, 1000, 0, 0.0f, targetHandler));
            //Servers.Add("ideal3", new PoolServer("ideal3", PoolType.Prop, 1000, 0, 0.0f, targetHandler));
            //Servers.Add("ideal4", new PoolServer("ideal4", PoolType.Prop, 1000, 0, 0.0f, targetHandler));
            //Servers.Add("ideal5", new PoolServer("ideal5", PoolType.Prop, 1000, 0, 0.0f, targetHandler));
            Servers.Add("bclc", new PoolServer("bclc", PoolType.Prop, 500, 2700, 8.1f, targetHandler)); // avg. 45min delay

            //_servers.Add("mineco.in", new PoolServer("mineco.in", PoolType.Pplns, 150, -1, 60, 7.34f, GetNextTarget));
            Servers.Add("smpps", new PoolServer("smpps", PoolType.Smpps, 20, 0, 0.0f, targetHandler));

            var MaxCol = 16;
            var columns = new List<string>();
            for (int col = 0; col < MaxCol; ++col)
            {
                var penaltyFactor = 1.0 + 0.01 * col;
                columns.Add(penaltyFactor.ToString());
            }

            var MaxRow = 24;
            var rows = new List<string>();
            for (int row = 0; row < MaxRow; ++row)
            {
                var baseProgress = 0.0 + 0.01 * row;
                rows.Add(baseProgress.ToString());
            }

            MaxSimulationGeneration = MaxCol * MaxRow;
            _statSummary = new StatSummary("bclc", columns, rows);
        }