# Cpu\_target of standard Windows 64-bit download

**URL:** <https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885>\
**Category:** General Usage\
**Created:** [March 26, 2017, 10:42am UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885 "2017-03-26T10:42:18Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)\
**Post date:** [March 26, 2017, 10:42am UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/1 "2017-03-26T10:42:18Z")

</div>

By default, `build_sysimg()` uses `cpu_target="native"`

I can override this (for example to use `cpu_target="x86_64"`)

```julia
include(joinpath(JULIA_HOME, Base.DATAROOTDIR, "julia", "build_sysimg.jl"))
build_sysimg(nothing, "x86_64", nothing, force=true)

```

What value of `cpu_target` produces the equivalent of the standard 64-bit Windows binary download?  
from [Download Julia](http://julialang.org/downloads/)

---

<div class="post-metadata">

**Author:** ![jameson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jameson/32/23_2.png) [@jameson](https://discourse.julialang.org/u/jameson)\
**Post date:** [March 29, 2017, 9:19pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/2 "2017-03-29T21:19:34Z")

</div>

I believe both `x86_64` and `generic` are common minimal targets.

---

<div class="post-metadata">

**Author:** ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)\
**Post date:** [March 29, 2017, 10:35pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/3 "2017-03-29T22:35:06Z")

</div>

I get this for one machine:

```julia
'x86_64' is not a recognized processor for this target (ignoring processor)

```

`core2` seems to work, I’ll also try `generic`.

There are really 2 reasons for my original question:

1. To find a common minimal 64-bit target (`core2` seems to work for my Intel and AMD processors)

2. I’d like to know what the Windows 64-bit download uses so that I can benchmark against it

---

<div class="post-metadata">

**Author:** ![jameson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jameson/32/23_2.png) [@jameson](https://discourse.julialang.org/u/jameson)\
**Post date:** [March 29, 2017, 11:09pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/4 "2017-03-29T23:09:40Z")

</div>

Ah, sorry, the cpu name should be `x86-64`. You can also use `help` to get the complete list of options supported by your build. (`./julia -C help`)

---

<div class="post-metadata">

**Author:** ![joaquimg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/joaquimg/32/223_2.png) [@joaquimg](https://discourse.julialang.org/u/joaquimg)\
**Post date:** [October 6, 2017, 5:39pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/5 "2017-10-06T17:39:05Z")

</div>

I am using the julia-0.5.1 option:  
`-C, --cpu-target <target> Limit usage of cpu features up to <target>` inside [BuildExecutable.jl](https://github.com/dhoegh/BuildExecutable.jl)

turns out that compiling in **Windows10 (with Intel(R) Core™ i7-5500U CPU @ 2.40GHz)** with `cpu_target` `"core2"`, `"x86-64"`,` "generic"`

seem to cause:

`LLVM ERROR: Program used external function 'rint' which could not be resolved!`

in a **Windows Server 2012 R2 (Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz)**

Yes, compiling in one machine and running in another.

`"generic"` also causes:

`WARNING: unable to determine host cpu name`

Moreover, compiling with `"native"` works locally in both machines.

this issue is related to [https://github.com/dhoegh/BuildExecutable.jl/issues/47](https://github.com/dhoegh/BuildExecutable.jl/issues/47)

---

<div class="post-metadata">

**Author:** ![joaquimg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/joaquimg/32/223_2.png) [@joaquimg](https://discourse.julialang.org/u/joaquimg)\
**Post date:** [October 6, 2017, 7:48pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/6 "2017-10-06T19:48:50Z")

</div>

I can compile for **Windows Server 2012 R2 (Intel® Xeon® CPU E5-2670 v2 @ 2.50GHz)** using the target:

`"core-avx-i"`

Is there something that includes both: `"core-avx-i"` and `"core2"` ?

---

<div class="post-metadata">

**Author:** ![yuyichao](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yuyichao/32/20_2.png) [@yuyichao](https://discourse.julialang.org/u/yuyichao)\
**Post date:** [October 6, 2017, 10:07pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/7 "2017-10-06T22:07:08Z")

</div>

What do you mean by “includes both”? Compatible with or including features in or sth else?

---

<div class="post-metadata">

**Author:** ![joaquimg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/joaquimg/32/223_2.png) [@joaquimg](https://discourse.julialang.org/u/joaquimg)\
**Post date:** [October 8, 2017, 8:23pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/8 "2017-10-08T20:23:49Z")

</div>

I meant a target which would work on both processor architectures.

---

<div class="post-metadata">

**Author:** ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)\
**Post date:** [October 8, 2017, 8:40pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/9 "2017-10-08T20:40:44Z")

</div>

I’d also like to know how the standard 64-bit Windows binary download (from [Download Julia](http://julialang.org/downloads)) is compiled. i.e. What value of `cpu_target` is used?

---

<div class="post-metadata">

**Author:** ![yuyichao](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yuyichao/32/20_2.png) [@yuyichao](https://discourse.julialang.org/u/yuyichao)\
**Post date:** [October 9, 2017, 2:50am UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/10 "2017-10-09T02:50:18Z")

</div>

> [@joaquimg](#):
>
> I meant a target which would work on both processor architectures.

Just `core2`

> [@greg\_plowman](#):
>
> I’d also like to know how the standard 64-bit Windows binary download (from [Download Julia](http://julialang.org/downloads)) is compiled. i.e. What value of cpu\_target is used?

`generic`

---

<div class="post-metadata">

**Author:** ![joaquimg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/joaquimg/32/223_2.png) [@joaquimg](https://discourse.julialang.org/u/joaquimg)\
**Post date:** [October 9, 2017, 12:22pm UTC](https://discourse.julialang.org/t/cpu-target-of-standard-windows-64-bit-download/2885/11 "2017-10-09T12:22:48Z")

</div>

Thanks for the help.

But with:

> [@yuyichao](#):
>
> Just core2

I get:

> [@joaquimg](#):
>
> LLVM ERROR: Program used external function ‘rint’ which could not be resolved!

and it does not happen with

`"core-avx-i"` and `"native"`

This is really strange…
