की तुलना में तेजी मैं वेबकिट पर इस कोड को चलाने की आवश्यकता चलता है, यह एंड्रॉयड के लिए एक संकर एप्लिकेशन का एक हिस्सा है: https://jsbin.com/boduputebu/edit?js,consoleक्यों फ़ायरफ़ॉक्स इस कोड को 10x क्रोम
:
for(var x = 0; x < width; x++) {
for(var y = 0; y < height; y++) {
var i = (y * width + x) * 3;
var r = data[i];
var g = data[i + 1];
var b = data[i + 2];
var green = is_green(r, g, b);
x_histogram[x] += green;
y_histogram[y] += green;
}
}
यहां परीक्षण का पूरा कोड है मैंने सोचा कि वी 8 फ़ायरफ़ॉक्स (स्पाइडरमोन्की) से तेज है, लेकिन यहां इस सरल कोड के लिए स्पाइडरमोन्की काफी तेज है। मेरे लैपटॉप पर प्रदर्शन है:
Chrome: 30 ms
Node: 30 ms
Firefox: 3 ms
Java (same code with Java): 3 ms
क्या आपके पास V8 पर तेज़ बनाने के लिए कोड बदलने का कोई विचार है। वर्तमान प्रदर्शन के साथ मुझे इसे जावा पक्ष पर मूल लिखना पड़ा, लेकिन यह मेरे लिए एक अच्छा विकल्प नहीं है। या यदि इसे तेज़ी से बनाने का कोई तरीका नहीं है तो क्या आप जानते हैं कि वी 8 इस कोड को बहुत धीमा क्यों चलाता है?
संस्करण:
Chrome: "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36"
FireFox: "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:49.0) Gecko/20100101 Firefox/49.0"
जबकि अंतर छोटे (8-9 बनाम 2.5-3 एमएस) है, मैं [पुन: पेश] कर सकते हैं (https://jsbin.com/nexocopuka/1/edit?js,console) इस। दिलचस्प। – Cerbrus
एफएफ आपके मेटा डेटा को जितना ज्यादा क्रोम इकट्ठा करने में व्यस्त नहीं है? – Teemu
क्या आप जावास्क्रिप्ट इंजन आंतरिक के बारे में तकनीकी स्पष्टीकरण चाहते हैं या बस अपने कोड में एक फिक्स चाहते हैं? –