I need *your* benchmarking help!

Simon Bühler simon at aktionspotenzial.de
Sun Oct 25 18:40:54 UTC 2009


ok with the instructions i was able to build jeffs branch, here are my 
findings:

i timed the time from button pressed until the progressbar starts at 0% (where 
in master the sql output begins) and the time needed to complete to 100%.

master:
Collection has 20896 tracks

phase 1: 2:34 minutes
phase2: 13:03 minutes

ther were a lot of

 [ERROR!] GREPME MySQL query failed! Duplicate entry 'Wayne wonder' for key 2  
on  "INSERT INTO artists_temp( name ) VALUES ('Wayne wonder');"
[ERROR!] GREPME MySQL query failed! Duplicate entry 'A Little Deeper-94' for 
key 2  on  "INSERT INTO albums_temp( artist, name ) VALUES ( 94, 'A Little 
Deeper');"          

errors.

jeffs branch:

i got this at startup:

amarok:                 [PluginManager] Trying to load:  "amarok_collection-
mysqlservercollection"                                                                       
amarok:                 [PluginManager]                                                                                                                                  
"                " PluginManager Service Info:                                                                                                                           
"                " ---------------------------                                                                                                                           
"                " name                          : "MySQLServer-Sammlung"                                                                                                
"                " library                       : "amarok_collection-
mysqlservercollection"                                                                             
"                " desktopEntryPath              : "amarok_collection-
mysqlservercollection.desktop"                                                                     
"                " X-KDE-Amarok-plugintype       : "collection"                                                                                                          
"                " X-KDE-Amarok-name             : "mysqlserver-collection"                                                                                              
"                " X-KDE-Amarok-authors          : ("Jeff Mitchell")                                                                                                     
"                " X-KDE-Amarok-rank             : "100"                                                                                                                 
"                " X-KDE-Amarok-version          : "1"                                                                                                                   
"                " X-KDE-Amarok-framework-version: "49"                                                                                                                  

amarok:               END__: static Amarok::Plugin* 
PluginManager::createFromService(KSharedPtr<KService>) - Took 0.035s 
amarok:               [CollectionManager] Initialising sqlcollection                                                     
amarok:               BEGIN: ScanManager::ScanManager(SqlCollection*)                                                    
amarok:               END__: ScanManager::ScanManager(SqlCollection*) - Took 
0.00013s                                    
amarok:               BEGIN: 
MySqlServerCollection::MySqlServerCollection(const QString&, const QString&)                
amarok:                  Automatic reconnect successfully activated                                                      
amarok:                  Automatic reconnect successfully activated                                                      
amarok:                  Connected to MySQL server 5.0.70-log                                                            
amarok:                  Connected to MySQL server 5.0.70-log                                                            
amarok:                  Initialized thread, count== 1                                                                   
amarok:                 BEGIN: void DatabaseUpdater::update()                                                            
amarok:                    Database version:  9                                                                          
amarok:                    Database out of date: database version is 9 , 
current version is 10                           
amarok:                   BEGIN: void DatabaseUpdater::upgradeVersion9to10()                                             
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'jamendo_albums'  on  "DROP TABLE jamendo_albums" 
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'jamendo_artists'  on  "DROP TABLE jamendo_artists" 
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'jamendo_genre'  on  "DROP TABLE jamendo_genre"     
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'jamendo_tracks'  on  "DROP TABLE jamendo_tracks"   
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'magnatune_albums'  on  "DROP TABLE magnatune_albums" 
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'magnatune_artists'  on  "DROP TABLE magnatune_artists" 
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'magnatune_genre'  on  "DROP TABLE magnatune_genre"     
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'magnatune_moods'  on  "DROP TABLE magnatune_moods"     
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'magnatune_tracks'  on  "DROP TABLE magnatune_tracks"   
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'opmldirectory_albums'  on  "DROP TABLE opmldirectory_albums" 
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'opmldirectory_artists'  on  "DROP TABLE opmldirectory_artists" 
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'opmldirectory_genre'  on  "DROP TABLE opmldirectory_genre"     
amarok:                      [ERROR!] GREPME MySQL query failed! Unknown table 
'opmldirectory_tracks'  on  "DROP TABLE opmldirectory_tracks"   
amarok:                      [ERROR!] GREPME MySQL query failed! Duplicate key 
name 'devices_rshare'  on  "CREATE INDEX devices_rshare ON devices( 
servername, sharename );"                                                                                                                                                                      
amarok:                      [ERROR!] GREPME MySQL query failed! Duplicate key 
name 'lyrics_url'  on  "CREATE UNIQUE INDEX lyrics_url ON lyrics(url);"                   
amarok:                      [ERROR!] GREPME MySQL query failed! Duplicate key 
name 'urls_id_rpath'  on  "CREATE UNIQUE INDEX urls_id_rpath ON urls(deviceid, 
rpath);"   
amarok:                      [ERROR!] GREPME MySQL query failed! Duplicate key 
name 'stats_tag_name_artist_album'  on  "CREATE UNIQUE INDEX 
stats_tag_name_artist_album ON statistics_tag(name,artist,album)"                                                                                                                                     
amarok:                   END__: void DatabaseUpdater::upgradeVersion9to10() - 
DELAY Took (quite long) 14s                                                               
amarok:                 END__: void DatabaseUpdater::update() - DELAY Took 
(quite long) 14s           


the times:
Collection has 20891 tracks
phase 1: 25 sec
phase 2: 13:36 min


so jeffs version finds 5 tracks less and needs ~14mins, master 15:30mins

maybe this is caused by the longstanding "slow disk access under heavy load on 
amd64 systems" bug i'm still experencing to some extends




More information about the Amarok mailing list