Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hostnames in config #861

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

nikicat
Copy link
Contributor

@nikicat nikicat commented Apr 19, 2024

This patch allows to specify hostnames in config files instead of just IP addresses. It uses net::ToSocketAddrs to resolve the entry in the config file and proceeds with the first resolved entry. It is useful for cases when an IP address of a peer is not known in advance like running inside Kubernetes or Docker Compose.

@nikicat nikicat marked this pull request as draft April 19, 2024 12:30
@nikicat nikicat force-pushed the hostnames-in-config branch 2 times, most recently from 95af7b5 to 6e81290 Compare April 19, 2024 14:03
@plebhash
Copy link
Collaborator

thanks @nikicat, this looks like a nice improvement

do you have any suggestion with regards to a local setup where these changes could be tested?

@nikicat
Copy link
Contributor Author

nikicat commented Apr 24, 2024

I use Docker Compose to test it locally. Actually, this setup was the cause of this PR.

@Fi3
Copy link
Collaborator

Fi3 commented Apr 26, 2024

you can test it using localhost:port or mining.dmnd.work:port port would be 1000 for sv1 or 2000 for sv2

@Fi3 Fi3 deleted the branch stratum-mining:main May 3, 2024 09:37
@Fi3 Fi3 closed this May 3, 2024
@Fi3 Fi3 reopened this May 3, 2024
@Fi3
Copy link
Collaborator

Fi3 commented May 3, 2024

This PR needs to be rebased on dev

@plebhash
Copy link
Collaborator

plebhash commented May 9, 2024

hey @nikicat I tested this PR and it seems like a great improvement!

we had some changes to the dev branch recently, which forced everyone to rebase their PRs against dev

could you do that on your hostname-in-config branch?

Copy link
Contributor

github-actions bot commented Jun 1, 2024

🐰Bencher

ReportSat, June 1, 2024 at 19:07:29 UTC
ProjectStratum v2 (SRI)
Branchhostnames-in-config
Testbedsv2
Click to view all benchmark results
BenchmarkEstimated CyclesEstimated Cycles Results
estimated cycles | (Δ%)
Estimated Cycles Upper Boundary
estimated cycles | (%)
InstructionsInstructions Results
instructions | (Δ%)
Instructions Upper Boundary
instructions | (%)
L1 AccessesL1 Accesses Results
accesses | (Δ%)
L1 Accesses Upper Boundary
accesses | (%)
L2 AccessesL2 Accesses Results
accesses | (Δ%)
L2 Accesses Upper Boundary
accesses | (%)
RAM AccessesRAM Accesses Results
accesses | (Δ%)
RAM Accesses Upper Boundary
accesses | (%)
client_sv2_handle_message_common✅ (view plot)2,061.00 (+0.55%)2,125.16 (96.98%)✅ (view plot)473.00 (+0.44%)486.60 (97.21%)✅ (view plot)736.00 (+0.45%)755.80 (97.38%)✅ (view plot)6.00 (-11.58%)10.24 (58.57%)✅ (view plot)37.00 (+0.93%)38.54 (96.01%)
client_sv2_handle_message_mining✅ (view plot)8,203.00 (+0.08%)8,333.41 (98.44%)✅ (view plot)2,137.00 (+0.44%)2,171.05 (98.43%)✅ (view plot)3,163.00 (+0.56%)3,216.08 (98.35%)✅ (view plot)35.00 (-8.54%)43.59 (80.29%)✅ (view plot)139.00 (+0.10%)141.92 (97.94%)
client_sv2_mining_message_submit_standard✅ (view plot)6,246.00 (-0.44%)6,385.25 (97.82%)✅ (view plot)1,750.00 (+0.02%)1,763.29 (99.25%)✅ (view plot)2,556.00 (+0.07%)2,576.39 (99.21%)✅ (view plot)17.00 (-1.86%)22.01 (77.24%)✅ (view plot)103.00 (-0.76%)106.83 (96.41%)
client_sv2_mining_message_submit_standard_serialize✅ (view plot)14,833.00 (+0.35%)15,035.08 (98.66%)✅ (view plot)4,694.00 (+0.01%)4,707.29 (99.72%)✅ (view plot)6,753.00 (-0.02%)6,775.38 (99.67%)✅ (view plot)48.00 (+1.74%)51.61 (93.01%)✅ (view plot)224.00 (+0.63%)229.97 (97.41%)
client_sv2_mining_message_submit_standard_serialize_deserialize✅ (view plot)27,526.00 (+0.16%)27,842.13 (98.86%)✅ (view plot)10,545.00 (+0.03%)10,558.86 (99.87%)✅ (view plot)15,341.00 (+0.01%)15,361.25 (99.87%)✅ (view plot)85.00 (+1.56%)89.04 (95.46%)✅ (view plot)336.00 (+0.31%)345.25 (97.32%)
client_sv2_open_channel✅ (view plot)4,527.00 (+0.68%)4,612.38 (98.15%)✅ (view plot)1,461.00 (+0.04%)1,474.57 (99.08%)✅ (view plot)2,152.00 (-0.04%)2,172.84 (99.04%)✅ (view plot)13.00 (+7.69%)15.30 (84.98%)✅ (view plot)66.00 (+1.18%)68.18 (96.80%)
client_sv2_open_channel_serialize✅ (view plot)14,258.00 (+0.24%)14,457.67 (98.62%)✅ (view plot)5,064.00 (+0.01%)5,077.57 (99.73%)✅ (view plot)7,318.00 (+0.00%)7,339.22 (99.71%)✅ (view plot)37.00 (-0.43%)41.42 (89.33%)✅ (view plot)193.00 (+0.51%)198.72 (97.12%)
client_sv2_open_channel_serialize_deserialize✅ (view plot)22,704.00 (+0.25%)23,024.26 (98.61%)✅ (view plot)7,987.00 (+0.04%)8,001.43 (99.82%)✅ (view plot)11,614.00 (+0.00%)11,636.67 (99.81%)✅ (view plot)76.00 (+3.68%)81.35 (93.42%)✅ (view plot)306.00 (+0.40%)314.91 (97.17%)
client_sv2_setup_connection✅ (view plot)4,699.00 (-0.00%)4,763.67 (98.64%)✅ (view plot)1,502.00 (+0.04%)1,515.57 (99.10%)✅ (view plot)2,279.00 (+0.08%)2,300.07 (99.08%)✅ (view plot)8.00 (-10.04%)12.98 (61.64%)✅ (view plot)68.00 (+0.11%)69.56 (97.76%)
client_sv2_setup_connection_serialize✅ (view plot)16,376.00 (+0.60%)16,489.83 (99.31%)✅ (view plot)5,963.00 (+0.01%)5,976.57 (99.77%)✅ (view plot)8,651.00 (-0.05%)8,677.13 (99.70%)✅ (view plot)47.00 (+5.15%)48.94 (96.04%)✅ (view plot)214.00 (+1.21%)217.33 (98.47%)
client_sv2_setup_connection_serialize_deserialize✅ (view plot)35,616.00 (+0.21%)35,753.38 (99.62%)✅ (view plot)14,814.00 (+0.02%)14,828.43 (99.90%)✅ (view plot)21,746.00 (-0.02%)21,772.04 (99.88%)✅ (view plot)107.00 (+7.04%)113.12 (94.59%)✅ (view plot)381.00 (+0.32%)384.41 (99.11%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help

Copy link
Contributor

github-actions bot commented Jun 1, 2024

🐰Bencher

ReportSat, June 1, 2024 at 19:07:33 UTC
ProjectStratum v2 (SRI)
Branchhostnames-in-config
Testbedsv2
Click to view all benchmark results
BenchmarkLatencyLatency Results
nanoseconds (ns) | (Δ%)
Latency Upper Boundary
nanoseconds (ns) | (%)
client_sv2_handle_message_common✅ (view plot)44.78 (+0.49%)45.24 (98.98%)
client_sv2_handle_message_mining✅ (view plot)72.89 (+0.02%)80.27 (90.81%)
client_sv2_mining_message_submit_standard✅ (view plot)14.63 (-0.16%)14.70 (99.52%)
client_sv2_mining_message_submit_standard_serialize✅ (view plot)262.82 (-0.64%)284.32 (92.44%)
client_sv2_mining_message_submit_standard_serialize_deserialize✅ (view plot)587.92 (-1.11%)629.40 (93.41%)
client_sv2_open_channel✅ (view plot)161.53 (-2.52%)171.66 (94.10%)
client_sv2_open_channel_serialize✅ (view plot)293.17 (+3.41%)293.53 (99.88%)
client_sv2_open_channel_serialize_deserialize✅ (view plot)376.77 (-0.38%)422.94 (89.08%)
client_sv2_setup_connection✅ (view plot)156.93 (-4.34%)174.81 (89.77%)
client_sv2_setup_connection_serialize✅ (view plot)486.25 (+2.35%)504.80 (96.33%)
client_sv2_setup_connection_serialize_deserialize✅ (view plot)984.87 (+1.70%)1,040.25 (94.68%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help

Copy link
Contributor

github-actions bot commented Jun 1, 2024

🐰Bencher

ReportSat, June 1, 2024 at 19:07:28 UTC
ProjectStratum v2 (SRI)
Branch861/merge
Testbedsv1

🚨 2 ALERTS: Threshold Boundary Limits exceeded!
BenchmarkMeasure (units)ViewValueLower BoundaryUpper Boundary
client-sv1-authorize-serialize-deserialize/client-sv1-authorize-serialize-deserializeLatency (nanoseconds (ns))🚨 (view plot | view alert)732.24 (+5.06%)723.70 (101.18%)
client-sv1-subscribe-serialize-deserialize-handle/client-sv1-subscribe-serialize-deserialize-handleLatency (nanoseconds (ns))🚨 (view plot | view alert)807.10 (+7.96%)783.38 (103.03%)

Click to view all benchmark results
BenchmarkLatencyLatency Results
nanoseconds (ns) | (Δ%)
Latency Upper Boundary
nanoseconds (ns) | (%)
client-submit-serialize✅ (view plot)6,694.40 (-3.44%)7,328.53 (91.35%)
client-submit-serialize-deserialize✅ (view plot)7,677.30 (-2.28%)8,318.54 (92.29%)
client-submit-serialize-deserialize-handle/client-submit-serialize-deserialize-handle✅ (view plot)8,221.60 (-2.54%)8,843.40 (92.97%)
client-sv1-authorize-serialize-deserialize-handle/client-sv1-authorize-serialize-deserialize-handle✅ (view plot)924.26 (+2.97%)931.44 (99.23%)
client-sv1-authorize-serialize-deserialize/client-sv1-authorize-serialize-deserialize🚨 (view plot | view alert)732.24 (+5.06%)723.70 (101.18%)
client-sv1-authorize-serialize/client-sv1-authorize-serialize✅ (view plot)247.10 (-0.19%)255.73 (96.62%)
client-sv1-get-authorize/client-sv1-get-authorize✅ (view plot)156.54 (-0.25%)163.33 (95.84%)
client-sv1-get-submit✅ (view plot)6,486.80 (-3.25%)7,138.98 (90.86%)
client-sv1-get-subscribe/client-sv1-get-subscribe✅ (view plot)257.06 (-7.54%)292.26 (87.96%)
client-sv1-subscribe-serialize-deserialize-handle/client-sv1-subscribe-serialize-deserialize-handle🚨 (view plot | view alert)807.10 (+7.96%)783.38 (103.03%)
client-sv1-subscribe-serialize-deserialize/client-sv1-subscribe-serialize-deserialize✅ (view plot)632.66 (+3.06%)641.34 (98.65%)
client-sv1-subscribe-serialize/client-sv1-subscribe-serialize✅ (view plot)206.56 (-0.03%)220.03 (93.88%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help

Copy link
Contributor

github-actions bot commented Jun 1, 2024

🐰Bencher

ReportSat, June 1, 2024 at 19:07:28 UTC
ProjectStratum v2 (SRI)
Branchhostnames-in-config
Testbedsv1
Click to view all benchmark results
BenchmarkEstimated CyclesEstimated Cycles Results
estimated cycles | (Δ%)
Estimated Cycles Upper Boundary
estimated cycles | (%)
InstructionsInstructions Results
instructions | (Δ%)
Instructions Upper Boundary
instructions | (%)
L1 AccessesL1 Accesses Results
accesses | (Δ%)
L1 Accesses Upper Boundary
accesses | (%)
L2 AccessesL2 Accesses Results
accesses | (Δ%)
L2 Accesses Upper Boundary
accesses | (%)
RAM AccessesRAM Accesses Results
accesses | (Δ%)
RAM Accesses Upper Boundary
accesses | (%)
get_authorize✅ (view plot)7,930.00 (-5.92%)8,746.87 (90.66%)✅ (view plot)3,545.00 (-5.17%)3,864.85 (91.72%)✅ (view plot)4,995.00 (-4.73%)5,413.95 (92.26%)✅ (view plot)6.00 (-24.00%)10.38 (57.83%)✅ (view plot)83.00 (-7.67%)94.22 (88.09%)
get_submit✅ (view plot)94,688.00 (-0.90%)96,171.87 (98.46%)✅ (view plot)59,215.00 (-0.43%)59,782.21 (99.05%)✅ (view plot)85,098.00 (-0.36%)85,840.93 (99.13%)✅ (view plot)49.00 (-11.59%)62.77 (78.07%)✅ (view plot)267.00 (-5.24%)288.70 (92.48%)
get_subscribe✅ (view plot)7,430.00 (-6.78%)8,297.93 (89.54%)✅ (view plot)2,620.00 (-7.31%)2,949.78 (88.82%)✅ (view plot)3,680.00 (-6.83%)4,112.12 (89.49%)✅ (view plot)15.00 (-8.65%)20.01 (74.97%)✅ (view plot)105.00 (-6.70%)117.27 (89.54%)
serialize_authorize✅ (view plot)11,687.00 (-4.22%)12,533.42 (93.25%)✅ (view plot)5,116.00 (-3.64%)5,435.85 (94.12%)✅ (view plot)7,157.00 (-3.36%)7,577.05 (94.46%)✅ (view plot)10.00 (-7.17%)13.33 (75.05%)✅ (view plot)128.00 (-5.54%)140.66 (91.00%)
serialize_deserialize_authorize✅ (view plot)24,125.00 (-1.39%)24,719.70 (97.59%)✅ (view plot)9,723.00 (-1.78%)10,035.49 (96.89%)✅ (view plot)13,740.00 (-1.63%)14,163.79 (97.01%)✅ (view plot)40.00 (+9.04%)41.57 (96.21%)✅ (view plot)291.00 (-1.26%)297.54 (97.80%)
serialize_deserialize_handle_authorize✅ (view plot)29,625.00 (-1.69%)30,370.23 (97.55%)✅ (view plot)11,900.00 (-1.60%)12,219.85 (97.38%)✅ (view plot)16,865.00 (-1.46%)17,291.58 (97.53%)✅ (view plot)60.00 (+1.60%)65.36 (91.80%)✅ (view plot)356.00 (-2.08%)367.08 (96.98%)
serialize_deserialize_handle_submit✅ (view plot)125,344.00 (-0.83%)127,075.04 (98.64%)✅ (view plot)72,863.00 (-0.52%)73,628.21 (98.96%)✅ (view plot)104,474.00 (-0.49%)105,522.87 (99.01%)✅ (view plot)107.00 (-11.26%)132.14 (80.98%)✅ (view plot)581.00 (-2.27%)600.25 (96.79%)
serialize_deserialize_handle_subscribe✅ (view plot)26,976.00 (-1.71%)27,640.39 (97.60%)✅ (view plot)9,422.00 (-2.15%)9,751.78 (96.62%)✅ (view plot)13,346.00 (-2.00%)13,787.39 (96.80%)✅ (view plot)66.00 (-0.61%)74.70 (88.35%)✅ (view plot)380.00 (-1.44%)388.79 (97.74%)
serialize_deserialize_submit✅ (view plot)114,437.00 (-0.56%)115,677.47 (98.93%)✅ (view plot)67,860.00 (-0.30%)68,409.59 (99.20%)✅ (view plot)97,432.00 (-0.23%)98,162.29 (99.26%)✅ (view plot)69.00 (-1.18%)75.68 (91.17%)✅ (view plot)476.00 (-2.42%)493.17 (96.52%)
serialize_deserialize_subscribe✅ (view plot)22,454.00 (-1.82%)23,132.03 (97.07%)✅ (view plot)7,981.00 (-2.47%)8,307.33 (96.07%)✅ (view plot)11,259.00 (-2.32%)11,695.38 (96.27%)✅ (view plot)41.00 (+3.45%)44.10 (92.97%)✅ (view plot)314.00 (-1.40%)321.63 (97.63%)
serialize_submit✅ (view plot)99,063.00 (-0.83%)100,503.25 (98.57%)✅ (view plot)61,259.00 (-0.41%)61,831.38 (99.07%)✅ (view plot)87,938.00 (-0.36%)88,694.09 (99.15%)✅ (view plot)55.00 (-2.15%)62.56 (87.92%)✅ (view plot)310.00 (-4.46%)330.47 (93.81%)
serialize_subscribe✅ (view plot)10,801.00 (-4.61%)11,638.86 (92.80%)✅ (view plot)3,967.00 (-4.95%)4,296.78 (92.32%)✅ (view plot)5,536.00 (-4.68%)5,971.41 (92.71%)✅ (view plot)17.00 (+2.65%)19.35 (87.87%)✅ (view plot)148.00 (-4.66%)160.18 (92.40%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help

@rrybarczyk
Copy link
Collaborator

@nikicat any status updates here?

@nikicat
Copy link
Contributor Author

nikicat commented Jul 21, 2024

What update? I've rebased as @plebhash asked me and then nobody reacted, so this PR has conflicts again.

@rrybarczyk
Copy link
Collaborator

Hey @nikicat, sorry about that. I just pulled down your branch in an attempt to fix the merge conflicts for you, but there have been some substantial changes. If you want to give it one more go based of the latest dev branch, I will keep a better eye on it and act fast when you push again. When you are ready for a review, could you change the PR status from draft to ready for review? Thanks again.

@plebhash plebhash changed the base branch from dev to main August 28, 2024 20:18
@nikicat nikicat changed the base branch from main to dev September 1, 2024 19:07
@nikicat nikicat marked this pull request as ready for review September 1, 2024 19:07
@nikicat
Copy link
Contributor Author

nikicat commented Sep 1, 2024

@rrybarczyk Hi, the PR is ready

@GitGab19 GitGab19 changed the base branch from dev to main September 2, 2024 06:57
@GitGab19
Copy link
Collaborator

GitGab19 commented Sep 2, 2024

@nikicat I'm sorry but I just changed again the base branch into main since we started to merge PRs into it from last week.
I see you have some conflicts to be resolved

@plebhash
Copy link
Collaborator

I tried rebasing this PR against main but it became non-trivial due to the changes introduced via #1093

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants