Skip to content

Commit

Permalink
DB Schema change: added std dev, min and max to Result, units and les…
Browse files Browse the repository at this point in the history
…sisbetter to Bnchmark
  • Loading branch information
tobami committed Mar 30, 2010
1 parent f55ad2a commit 04c136d
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 18 deletions.
14 changes: 7 additions & 7 deletions speedcenter/codespeed/admin.py
Expand Up @@ -3,28 +3,28 @@
from django.contrib import admin

class RevisionAdmin(admin.ModelAdmin):
list_display = ('number', 'project', 'tag', 'date')
list_filter = ('project', 'tag')
list_display = ('number', 'project', 'branch', 'tag', 'date')
list_filter = ('project', 'tag')

admin.site.register(Revision, RevisionAdmin)

class InterpreterAdmin(admin.ModelAdmin):
list_display = ('name', 'coptions')
list_display = ('name', 'coptions', 'id')

admin.site.register(Interpreter, InterpreterAdmin)

class BenchmarkAdmin(admin.ModelAdmin):
list_display = ('name', 'benchmark_type', 'description')
list_display = ('name', 'benchmark_type', 'description', 'units', 'lessisbetter')

admin.site.register(Benchmark, BenchmarkAdmin)

class EnvironmentAdmin(admin.ModelAdmin):
list_display = ('name', 'cpu', 'memory', 'os')
list_display = ('name', 'cpu', 'memory', 'os', 'kernel')

admin.site.register(Environment, EnvironmentAdmin)

class ResultAdmin(admin.ModelAdmin):
list_display = ('revision', 'benchmark', 'value', 'result_type', 'interpreter', 'date')
list_filter = ('date', 'interpreter', 'benchmark')
list_display = ('revision', 'benchmark', 'value', 'interpreter', 'date')
list_filter = ('date', 'interpreter', 'benchmark')

admin.site.register(Result, ResultAdmin)
19 changes: 11 additions & 8 deletions speedcenter/codespeed/models.py
Expand Up @@ -24,17 +24,17 @@ class Meta:


class Benchmark(models.Model):
TYPES = (
('T', 'Trunk'),
('D', 'Debug'),
('P', 'Python'),
('M', 'Multilanguage'),
B_TYPES = (
('C', 'Cross-project'),
('O', 'Own-project'),
)
def __unicode__(self):
return str(self.name)
name = models.CharField(unique=True, max_length=50)
benchmark_type = models.CharField(max_length=1, choices=TYPES, default='T')
benchmark_type = models.CharField(max_length=1, choices=B_TYPES, default='C')
description = models.CharField(max_length=200, blank=True)
units = models.CharField(max_length=10, default='seconds')
lessisbetter = models.BooleanField(default=True)


class Environment(models.Model):
Expand All @@ -53,7 +53,10 @@ class Result(models.Model):
('M', 'Memory'),
('S', 'Score'),
)
value = models.FloatField(blank=True, null=True)
value = models.FloatField()
std_dev = models.FloatField(blank=True, null=True)
val_min = models.FloatField(blank=True, null=True)
val_max = models.FloatField(blank=True, null=True)
date = models.DateTimeField(blank=True, null=True)
result_type = models.CharField(max_length=1, choices=TYPES, default='T')
revision = models.ForeignKey(Revision)
Expand All @@ -62,5 +65,5 @@ class Result(models.Model):
environment = models.ForeignKey(Environment)

class Meta:
unique_together = ("revision", "interpreter", "benchmark", "environment" , "result_type")
unique_together = ("revision", "interpreter", "benchmark", "environment")

16 changes: 13 additions & 3 deletions speedcenter/codespeed/views.py
Expand Up @@ -63,7 +63,9 @@ def getbaselineinterpreters():
return baseline

def getdefaultenvironment():
default = Environment.objects.all()[0]
default = Environment.objects.all()
if not len(default): return 0
default = default[0]
if hasattr(settings, 'defaultenvironment'):
try:
default = Environment.objects.get(name=settings.defaultenvironment)
Expand Down Expand Up @@ -151,7 +153,11 @@ def timeline(request):
if data["baseline"] == "false":
defaultbaseline = False

defaultenvironment = getdefaultenvironment().id
defaultenvironment = getdefaultenvironment()
if not defaultenvironment:
return HttpResponse("You need to configure at least one Environment")
defaultenvironment = defaultenvironment.id

defaultbenchmark = "grid"
if data.has_key("benchmark"):
try:
Expand Down Expand Up @@ -303,7 +309,11 @@ def overview(request):
data = request.GET

# Configuration of default parameters
defaultenvironment = getdefaultenvironment().id
defaultenvironment = getdefaultenvironment()
if not defaultenvironment:
return HttpResponse("You need to configure at least one Environment")
defaultenvironment = defaultenvironment.id

defaultchangethres = 3
defaulttrendthres = 3
defaultcompthres = 0.2
Expand Down

0 comments on commit 04c136d

Please sign in to comment.