akarnokd / akarnokd/akarnokd-misc

Benchmark January 18, 2017

Aberta
#5 0 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Java
Estrelas
54
Forks
20
Merge médio
1h 20min
PRs com merge (30d)
5

Descrição

# Environment
- i7 4790 stock settings
- Windows 7 x64
- Java 8u112
- library versions: snapshots of their latest major version
- **Green: good**
- **Red: not so good**
- [Raw data](https://gist.github.com/akarnokd/cb9c886fca322abdd6ecb29cca6b6c95)

# Async

(Start a stream from the main thread but don't pin the source to it)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22056847/5b534a0c-dd62-11e6-95f7-77180265889e.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22056881/9ca6aca6-dd62-11e6-8713-172852b0048b.png)

# Pipeline

(Start a stream from a thread, pin it there and observe on a separate thread)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057060/5c595a26-dd63-11e6-96c2-2633c632c5a6.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057092/7654fe62-dd63-11e6-922a-ea065663bc42.png)

# Blocking

## Empty source

versus RxJava 1.x

![image](https://cloud.githubusercontent.com/assets/1269832/22057166/cac8ef1c-dd63-11e6-86ab-e6d66cd968fb.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057172/d769c5ac-dd63-11e6-9ee3-cbc3df8b36c7.png)

## First element

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057261/3a493fb8-dd64-11e6-9945-7047db338cf2.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057302/710d511a-dd64-11e6-84da-b30db1cbe53c.png)

## Last element

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057367/a716c43a-dd64-11e6-8b4e-926141b215b2.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057391/be53c12a-dd64-11e6-9d2c-e2e96b83fed4.png)

# Memory consumption

(Having 1 million active sequences, Megabytes used, smaller is better)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057497/3352ea78-dd65-11e6-8c71-0eaa96e55117.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057488/2b380170-dd65-11e6-9c88-1a19f283b8bd.png)

# Synchronous streaming

## range

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057719/3f8e935e-dd66-11e6-8ea1-5a062891e4bb.png)

versus Reactor-Core

![image](https://cloud.githubusercontent.com/assets/1269832/22057741/555d805a-dd66-11e6-8720-6b1ad8aa6eda.png)

## fromArray

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057603/b3819370-dd65-11e6-80c7-7ace07ecaba3.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057618/c67535cc-dd65-11e6-95c6-96459561d264.png)

## fromIterable

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057774/7d4ddca4-dd66-11e6-842e-437c738504e7.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057787/917cf070-dd66-11e6-89ee-53a20322d4f1.png)

## concatMap

### just

(Concatenate a sequence of values mapped into `just()`)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057869/e4925656-dd66-11e6-9a8b-85f8d01936b0.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057882/f9e52e70-dd66-11e6-898d-c421a8091f80.png)

### range

(Concatenate a sequence of values expanded into a `range()`)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22057928/3253232a-dd67-11e6-8aae-1cba115caeba.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22057957/55d32d36-dd67-11e6-9881-295e6766f0dc.png)

### cross-range

(Deliver 1 million items split between a main sequence of length `N` and its mapping to a `1,000,000 / N` inner sequence.

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058014/a9f3a22e-dd67-11e6-86c6-cd6d89324aa0.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058046/cb8f0f40-dd67-11e6-8016-fbb0abdcefed.png)

## flatMap

### just

(Merge a sequence of values mapped into `just()`)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058115/190b3f1e-dd68-11e6-90b8-dc2779c06f9b.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058129/235fd84e-dd68-11e6-9c8d-73a2f1552c21.png)

### range

(Merge a sequence of values expanded into a `range()`)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058182/5c712b38-dd68-11e6-8700-ddeac183cc1b.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058189/649f0b68-dd68-11e6-8efe-989e3e22a37b.png)

### cross-range

(Deliver 1 million items split between a main sequence of length `N` and its mapping to a `1,000,000 / N` inner sequence.

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058240/902bcb40-dd68-11e6-9431-e4ae130c6286.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058253/96be0090-dd68-11e6-981e-ee16a371a782.png)

## flatten

(Flatten an mapping to an `Iterable` inner source)

### just

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058334/d4c80eda-dd68-11e6-9848-436c0b2e4395.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058360/e5f10c0c-dd68-11e6-9376-753ed610ea4a.png)

### range

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058393/068babfc-dd69-11e6-9f3f-b2e0a23fe88d.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058399/0dee0944-dd69-11e6-9a67-b9785fdb31de.png)

### cross-range

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058441/27512524-dd69-11e6-924f-ac5720bf3cd1.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058453/332f9218-dd69-11e6-8a5f-23b22ade3ddf.png)

## concatMap vs flatMap

### just

![image](https://cloud.githubusercontent.com/assets/1269832/22058620/dd14f606-dd69-11e6-9317-19d21f68a504.png)

### range

![image](https://cloud.githubusercontent.com/assets/1269832/22060427/f7ec98c4-dd70-11e6-8ead-bd92790c25c9.png)

### cross-range

![image](https://cloud.githubusercontent.com/assets/1269832/22058723/49df24f0-dd6a-11e6-9d79-0784bb2f9774.png)

# Subject overhead

## direct multicast

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058897/f25ed1a2-dd6a-11e6-9ad3-30b8455b08d1.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058921/039cc172-dd6b-11e6-9733-acadd95cd5b2.png)

## replay

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058953/274a3bd6-dd6b-11e6-8d5c-35e91e4ed67b.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058960/324b0a92-dd6b-11e6-8a79-de982600e1f4.png)

## unicast

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22058987/52db36ba-dd6b-11e6-9a5e-5bc1457a873e.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22058994/5b9c221e-dd6b-11e6-8b82-1d7a2f70f350.png)

## async

(Reactor-Core has no AsnycProcessor equivalent)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22059038/7f8ead18-dd6b-11e6-8095-01816320ac77.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22059053/891ab368-dd6b-11e6-82c2-b36639fdf483.png)

## behavior

(Reactor-Core has no BehaviorProcessor equivalent)

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22059092/bc7c5036-dd6b-11e6-89b5-4b5cca3465f0.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22059096/c3ce0d48-dd6b-11e6-893a-6c176350cf50.png)

# Subscribe

versus RxJava 1.x:

![image](https://cloud.githubusercontent.com/assets/1269832/22059945/3282d09a-dd6f-11e6-8056-32ba3116213a.png)

versus Reactor-Core:

![image](https://cloud.githubusercontent.com/assets/1269832/22060006/6dff437e-dd6f-11e6-8657-79860efe8a9b.png)

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.