Здравствуйте, Nuzhny, Вы писали:
N>Давай проверим.
А ты достаточно крепок, дружок ?
N>Аналогичный тест:
Аналогичный, это какой именно ?
I>>Ну вот я взял этот квантум, 57.0.2 64, и пусканул жээсный тестик, который обсуждается в соседнем треде. Чет не впечатлился — втрое медленнее Хрома
N>У меня один тест быстрее, а другой медленнее. Причём FF быстрее Хрома в первом тесте в 10 раз, а во втором медленнее в 1.5. Что-то не сходится с твоими данными.
Не совсем понятно, что такое один, а что такое второй
Судя по твоей картинке ты запустил какую то левую хрень, но утверждаешь, что де не сходится с моим тестом.
Смотри внимательно:
| Фокс |
| |
| |
| Хром |
| |
| |
| Память |
| |
| |
Гыыыыыы
Поздновато замерил — фокс выжрал больше 2х гб и пошел на спад.
Про "втрое" я погорячился — по сортировке все четверо.
И похоже с хромом я "подмухлевал" — открыл страницу дважды
, т.е. 700мб это ажно с запасом. То есть, в хроме открыто несколько вкладок, из которых тестовая — дважды. Если оставить только одну — будет меньше 400мб. Смотрим на твои 800мб у фокса и дико смеёмся
N>Отлично листается и рисуется в обоих браузерах.
Ога. А видеокарта у тебя какая ? У меня — интегрированая в материнку, интел.
I>>И память сожрал, и проц не смог выюзать, и рисует коряво. Пудозреваю, на слабых ноутбуках-планшетах это говно будет уходить в своп, как дети в школу
N>Смотрим на память. В сумме Хром занимает где-то 1.3 Гб, а FF 800 Мб. Хм!
Ну так глянь что у меня выходит
I>>Вобщем, неочевидно, где Фокс стал круче. Может он стал круче предыдущей версии Фокса?
N>Кажется, что тут проблема не в FF, а в честности.
Это какая то эпидемия
Один говорит, что я в вру в одну сторону, другой — что вру в противоположную. Сам подумай, как я могу врать в обе стороны одновременно ?
Вот тест, про который идет речь, и замеры отсюда ты видишь в скринах выше
| тест |
| 'use strict';
const N = 1000*1000;
const re = /-/g;
function Main(number) {
let watch = Date.now();
const vals = ToArray(Select(Range(0, number), x => new TestClass()));
console.warn(`Init, miliseconds: ${Date.now() - watch}`);
watch = Date.now();
QuickSort(vals, (x,y)=>x.Id < y.Id);
console.warn(`Sort miliseconds: ${Date.now() - watch}`);
}
function QuickSort(vals, less){
QuickSortImpl(vals, less, 0, vals.length - 1);
}
function QuickSortImpl (vals, less, left, right) {
if (right <= left)
return;
let i = left;
let j = right;
const mid = Math.floor((left + right) / 2);
const midVal = vals[mid];
while (i <= j) {
while (less(vals[i], midVal)) {
i++;
}
while (less(midVal, vals[j])) {
j--;
}
if (i <= j) {
const tmp = vals[i];
vals[i] = vals[j];
vals[j] = tmp;
i++;
j--;
}
}
if(left < i - 1) {
QuickSortImpl(vals, less, left, i - 1);
}
if(right > i) {
QuickSortImpl(vals, less, i, right);
}
}
class TestClass {
constructor() {
this.Id = CreateGuid();
this.Value = CreateGuid();
}
toString() {
return this.Id;
}
}
function ToArray(iterator) {
return [...iterator];
}
function* Range(start, end) {
for(let i = start; i<end; i++) {
yield i;
}
}
function* Select(iterator, projector) {
for(let x of iterator) {
yield projector(x);
}
}
function Compare(x, y) {
if(x > y)
return 1;
if(x < y)
return -1;
return 0;
}
function CreateGuid() {
return NewGuid().replace(re, "");
}
function NewGuid() {
function s4() {
return (0|(1 + Math.random() * 0x10000) & 0xFFFF)
.toString(16);
}
return [s4() , s4() , '-' , s4() , '-' , s4() , '-' , s4() , '-' , s4() , s4() , s4()].join('');
}
function delay(time) {
return new Promise((resolve)=>{
setTimeout(resolve, time);
});
}
for(let i = 0, promise = Promise.resolve(); i<100;i++) {
promise = promise.then(()=>Main(N)).then(()=>delay(1000));
}
|
| |