Closed rickeycarter closed 6 years ago
Update: So the internet check calls ping from the terminal. My terminal will not run ping, but will run /sbin/ping, which points to a path problem. However, my paths seem to be set correctly.
@rickeycarter That should be the correct one, I've now manually specified to be /sbin/ping
Maybe that helps. If not tell me what /sbin/ping 8.8.8.8 -c 1 -t 3
results in.
Using /sbin/ping, I get this
PING 8.8.8.8 (8.8.8.8): 56 data bytes
--- 8.8.8.8 ping statistics ---
1 packets transmitted, 0 packets received, 100.0% packet loss
Perhaps there is too much latency in my internet connection for the t = 3 parameter
Running
/sbin/ping 8.8.8.8 -c 4
Returns
PING 8.8.8.8 (8.8.8.8): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Which I'm not sure will pass your test. I also tried to just globally set the internet flag in the shell script to be true in a forked copy resulted with this
bash ./rcmacOS-eGPU.sh -e
Results:
macOS-eGPU.sh (v1.5)
Accept license terms... [done]
Killing all other running programs... [OK]
Internet connection established... [YES]
Fetching system information...
macOS info [done]
system integrity protection [done]
thunderbolt version [done]
GPU information [done]
installed eGPU software [done]
installed patches [done]
installed programs [done]
Setting internal switches...
Checking for incompatibilies and up to date software...
NVIDIA drivers [skip]
NVIDIA eGPU enabler [skip, incompatible]
AMD legacy drivers [skip]
T82 unblocker [skip]
NVIDIA dGPU deactivator [skip]
macOS 10.13.4/.5 NVIDIA patch [skip]
macOS 10.13.4+ thunderbolt 1/2 unlock [skip]
CUDA software [skip]
thunderbolt daemon [skip]
IO PCIE Tunnelled patch [skip]
Checking if SIP is sufficently disabled... [OK]
Download external content...
Uninstalling...
Installing...
Patching...
deactivating auto-updates...
Finish...
cleaning system [done]
Nothing has been changed.
I had run purge-wrangler as a stand alone. I'm going to remove the patch with that tool, reboot, and try the -e option here again now that I have a work around for the internet issue.
Use „echo $PATH“ to see which are currently in.
This is the return of the echo
/Users/XXXXX/anaconda/bin:/Developer/NVIDIA/CUDA-9.1/bin:/Developer/NVIDIA/CUDA-9.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin}
I just tried the new program, still have this error
bash <(curl -s https://raw.githubusercontent.com/learex/macOS-eGPU/master/macOS-eGPU.sh) -i
macOS-eGPU.sh (v1.5)
Accept license terms... [done]
Killing all other running programs... [OK]
Internet connection established... [NO]
Fetching system information...
macOS info [done]
system integrity protection [done]
thunderbolt version [done]
GPU information [done]
installed eGPU software [done]
installed patches [done]
installed programs [done]
Setting internal switches...
Checking for incompatibilies and up to date software...
NVIDIA drivers [skip, up to date]
NVIDIA eGPU enabler [skip, incompatible]
AMD legacy drivers [skip]
T82 unblocker [skip, already installed]
NVIDIA dGPU deactivator [skip]
macOS 10.13.4/.5 NVIDIA patch [skip, incompatible]
macOS 10.13.4+ thunderbolt 1/2 unlock [install scheduled]
CUDA software
CUDA drivers [skip, up to date]
CUDA developer driver [skip, up to date]
CUDA toolkit [update scheduled]
CUDA samples [update scheduled]
thunderbolt daemon [skip]
IO PCIE Tunnelled patch [install scheduled]
Checking if SIP is sufficently disabled... [OK]
Download external content...
--- CUDA developer driver / CUDA toolkit / CUDA samples ---
0.5%^C
Abort...
Interrupt...
Besides the internet issue, I'm also trying to fight going to CUDA 9.2. I can't tell from the NVIDIA page if the latest drivers will not work with CUDA 9.1. They say 9.2 is preferred but not required.
The script seems to be all or nothing. I'm not sure why I get the incompatible warning with the NVIDIA enabler command.
@rickeycarter you're on macOS 10.13.6, that's why it's incompatible.
The IO PCIE Tunneled patch + driver is for .6 -> macos-egpu -n -l
@rickeycarter no, "Request timeout" seems to be a non existent internet connection. I use Google's DNS (8.8.8.8) as it's ultra fast and 99.99% up. I'm curious why the ping fails but you can chat with me.
I would like to leave my cuda at 9.1. TensorFlow must be compiled to match the cuda version. Compiling TensorFlow from source to use 9.2 would be no small feat based on prior experience. So, I would like to keep CUDA at 9.1 if possible. I don't see a flag in the script that says skip CUDA update.
@rickeycarter go with macos-egpu -n -l, I don't have "negative" Flags
For the internet ping issue, I can't ping www.google.com or 8.8.8.8 but /sbin/ping www.nasa.gov
works just fine.
@rickeycarter Then just use your custom fork with the flags -n and -l, that should do it.
@rickeycarter does /sbin/ping 1.1.1.1 work? (HS Cloudflare DNS), if so, I can change the 8.8.8.8 to 1.1.1.1 ... (do you have any clue why google's services are unreachable? Like firewalls, proxies, etc?)
1.1.1.1 returns results as expected. I ran my fork with -n and -l. eGPU is still dead silent despite a full reboot. I'm going to give the reinstall a new try.
@rickeycarter OK, I've changed 8.8.8.8 to 1.1.1.1, maybe this simplifies the process for you.
@rickeycarter what do you mean with silent? The eGPU should fire up even if nothing "works".
Well, as in silent. The egpu has a blue light on the front that will glow when it is connected to the computer. I tested the egpu chassis with an older MBP, and the light and GPU spun up. On the iMac, it remains silent. I don't know if there is something with the TB2 issue or something in the system control. I'll try to power down and unplug the power cable on the iMAC to reset the system control board. Perhaps that will help.
ps-I tried the new script and it worked fine, as expected.
I did the system controller reset. That let the eGPU box activate. I tried some various combinations of getting the computer to talk to the GPU. I'm still not there yet, but I think I'm closer and it could be a driver issue at this point. I have noticed that the iMac system is much more difficult with the utilization of an eGPU. The MBP seems to work without issue.
Updates: DNS issue for 8.8.8.8. Turns out our institution is having DNS issues with 8.8.8.8. 8.8.4.4 does resolve. That's our issue
eGPU issues are resolved. I uninstalled everything and reinstalled it today. I was still having connection issues (GPU would not activate). I believe this is a result of the System Management Controller (SMC) board on the iMac is very sensitive to loads. When I reset the SMC, I could make the eGPU work.
So, I think we can close this as the internet issues are resolved.
When I try to run the script from the terminal, I get a note back about internet connection is required
I tested my internet connection by testing with a SSH tunnel. That work. Running network diagnostics, I can ping etc. Obviously, I have internet connection as I type now on GitHub.
That oddity aside, I can run this and it pulls a new version just fine:
But, I don't want to run this version as I don't want to move to CUDA 9.2 now (I don't want to reconfigure and recompile TensorFlow at this time). It would be nice if the script would prompt on the CUDA update, but that might be another request.
To try to work around it, I tried this:
and received this:
XXXXXX:~ yyyyyy$ bash <(curl -s https://raw.githubusercontent.com/learex/macOS-eGPU/master/macOS-eGPU.sh) -e
I tried to search around and see if anyone else has had this issue. I didn't find anything. I'm not sure if it is a network security issue or something with the script. (in the script above, I had the eGPU plugged and connected. The computer just stopped seeing the eGPU over the weekend.)