From 80406431186cc7dd9fac0c8ca23ddf02d20f8c7a Mon Sep 17 00:00:00 2001 From: Andrew Date: Fri, 2 Mar 2018 11:21:34 -0800 Subject: [PATCH] Start profiling [skip ci] --- Gemfile | 8 +++++--- benchmark/Gemfile | 6 ++++-- benchmark/benchmark.rb | 36 ++++++++++++++++++------------------ 3 files changed, 27 insertions(+), 23 deletions(-) diff --git a/Gemfile b/Gemfile index 829ee3c..cd7418b 100644 --- a/Gemfile +++ b/Gemfile @@ -4,13 +4,15 @@ source "https://rubygems.org" gemspec gem "sqlite3" -gem "activerecord", "~> 5.1.0" +gem "activerecord", "~> 5.2.0.rc1" gem "gemoji-parser" gem "typhoeus" -gem "activejob" +gem "activejob", "~> 5.2.0.rc1" gem "redis" gem "connection_pool" +gem "faraday", path: "~/forks/faraday" +gem "ethon", path: "~/forks/ethon" # kaminari -gem "actionpack" +gem "actionpack", "~> 5.2.0.rc1" gem "kaminari" diff --git a/benchmark/Gemfile b/benchmark/Gemfile index 86d4f22..ef1f7bd 100644 --- a/benchmark/Gemfile +++ b/benchmark/Gemfile @@ -5,13 +5,15 @@ gemspec path: "../" # gem "sqlite3" gem "pg" -gem "activerecord", "~> 5.0.0" +gem "activerecord", "~> 5.2.0.rc1" gem "activerecord-import" -gem "activejob" +gem "activejob", "~> 5.2.0.rc1" gem "redis" gem "sidekiq" # performance +gem "faraday", path: "~/forks/faraday" +gem "ethon", path: "~/forks/ethon" gem "typhoeus" gem "oj" diff --git a/benchmark/benchmark.rb b/benchmark/benchmark.rb index 8dde88f..2732677 100644 --- a/benchmark/benchmark.rb +++ b/benchmark/benchmark.rb @@ -33,7 +33,7 @@ class Product < ActiveRecord::Base end end -total_docs = 100000 +total_docs = 10000 # ActiveRecord::Migration.create_table :products, force: :cascade do |t| # t.string :name @@ -56,26 +56,26 @@ Product.searchkick_index.delete rescue nil time = Benchmark.realtime do # result = RubyProf.profile do - # report = MemoryProfiler.report do + report = MemoryProfiler.report do # stats = AllocationStats.trace do - reindex = Product.reindex(async: true) + reindex = Product.reindex #(async: true) p reindex - # end - - 60.times do |i| - if reindex.is_a?(Hash) - docs = Searchkick::Index.new(reindex[:index_name]).total_docs - else - docs = Product.searchkick_index.total_docs - end - puts "#{i}: #{docs}" - if docs == total_docs - break - end - p Searchkick.reindex_status(reindex[:index_name]) if reindex.is_a?(Hash) - sleep(1) - # Product.searchkick_index.refresh end + + # 60.times do |i| + # if reindex.is_a?(Hash) + # docs = Searchkick::Index.new(reindex[:index_name]).total_docs + # else + # docs = Product.searchkick_index.total_docs + # end + # puts "#{i}: #{docs}" + # if docs == total_docs + # break + # end + # p Searchkick.reindex_status(reindex[:index_name]) if reindex.is_a?(Hash) + # sleep(1) + # # Product.searchkick_index.refresh + # end end # p GetProcessMem.new.mb -- libgit2 0.21.0