Skip to content

Conversation

@pitrou
Copy link
Member

@pitrou pitrou commented Jan 12, 2022

Factor out some basics of decimal representation and implementation in a generic base class.

@github-actions
Copy link

@pitrou pitrou force-pushed the ARROW-13617-decimal-common branch 3 times, most recently from 456d500 to d7cbefd Compare January 12, 2022 16:21
@pitrou pitrou requested a review from lidavidm January 12, 2022 16:22
@pitrou pitrou changed the title ARROW-13617: [C++] Make Decimal representations ARROW-13617: [C++] Make Decimal representations consistent Jan 12, 2022
@pitrou pitrou force-pushed the ARROW-13617-decimal-common branch 7 times, most recently from 58fc6ad to 1302436 Compare January 12, 2022 18:54
Factor out some basics of decimal representation and implementation in a generic base class.
@pitrou pitrou force-pushed the ARROW-13617-decimal-common branch from 1302436 to 5d74a90 Compare January 12, 2022 19:15
Copy link
Member

@lidavidm lidavidm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for doing this.

@lidavidm
Copy link
Member

@ursabot please benchmark lang=C++

@ursabot
Copy link

ursabot commented Jan 12, 2022

Benchmark runs are scheduled for baseline = b1a3e8c and contender = 5d74a90. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Skipped ⚠️ Only ['Python'] langs are supported on ec2-t3-xlarge-us-east-2] ec2-t3-xlarge-us-east-2
[Skipped ⚠️ Only ['JavaScript', 'Python', 'R'] langs are supported on ursa-i9-9960x] ursa-i9-9960x
[Finished ⬇️0.7% ⬆️0.09%] ursa-thinkcentre-m75q
Supported benchmarks:
ec2-t3-xlarge-us-east-2: Supported benchmark langs: Python. Runs only benchmarks with cloud = True
ursa-i9-9960x: Supported benchmark langs: Python, R, JavaScript
ursa-thinkcentre-m75q: Supported benchmark langs: C++, Java

@lidavidm
Copy link
Member

Hmm, hopefully Travis also gets around to building this PR so that we can run the tests on big-endian.

@pitrou
Copy link
Member Author

pitrou commented Jan 12, 2022

Unfortunately, Travis never runs on my PRs. I have no idea why.

@lidavidm
Copy link
Member

Indeed, this PR isn't in the Travis queue, and I also can't manually trigger a build for a fork from the UI, which is unfortunate.

@pitrou
Copy link
Member Author

pitrou commented Jan 12, 2022

I ran the s390x tests locally under emulation and they seemed to work (I had to disable Gandiva, though).

kRescaleDataLoss,
};

template <typename Derived, int BIT_WIDTH, int NWORDS = BIT_WIDTH / 64>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks Derived is not used?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed.

return result;
}

// Explicitly instantiate template base class, for DLL linking on Windows
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this approach avoid putting all template class implementation code inside the header?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should, though that's not the goal here :-)

@cyb70289
Copy link
Contributor

I ran the s390x tests locally under emulation and they seemed to work (I had to disable Gandiva, though).

IBM provides free s390x cloud instances. I tried, it works. But it expires in half year and you have to apply for a new one.
https://developer.ibm.com/gettingstarted/ibm-linuxone/

@pitrou pitrou closed this in d67a210 Jan 13, 2022
@pitrou pitrou deleted the ARROW-13617-decimal-common branch January 13, 2022 11:00
@ursabot
Copy link

ursabot commented Jan 13, 2022

Benchmark runs are scheduled for baseline = ab86daf and contender = d67a210. d67a210 is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Finished ⬇️0.0% ⬆️0.0%] ec2-t3-xlarge-us-east-2
[Failed ⬇️0.0% ⬆️0.0%] ursa-i9-9960x
[Finished ⬇️2.02% ⬆️0.09%] ursa-thinkcentre-m75q
Supported benchmarks:
ec2-t3-xlarge-us-east-2: Supported benchmark langs: Python. Runs only benchmarks with cloud = True
ursa-i9-9960x: Supported benchmark langs: Python, R, JavaScript
ursa-thinkcentre-m75q: Supported benchmark langs: C++, Java

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants